数据安全:基于不可见字符的文本水印技术

数字水印综述 这篇论文对现有的数字水印方案研究分析,发现了问题如下1)一次水印嵌入只能实现一次版权声明2)数据所有者对数据的恢复程度缺乏控制给出了如下解决方案1)对数据进行分区,每个分区嵌入水印,对水印进行多次检测,实现水印的多次版权声明,对于失效的水印利用差值扩展,实现数据恢复2)提出一种分级可逆的数字水印技术,根据对数据的可用性来对水印质量提高。通过性能检测,上述两种解决方案都具有良好的可行性和鲁棒性。展望。 阅读详情
AI摘要

信息数字化带来便利的同时也存在泄露等风险,数字水印技术可追溯信息泄露环节。文本水印技术研究相对较少,常见的有基于普通文本格式、不可见编码、文本内容等技术。其中不可见编码可利用零宽字符特性加密,还给出了代码实现示例。

一、概述

信息媒体的数字化为信息的存取提供了极大的方便,越来越多的业务现在都是基于网络信息完成的。与此同时,信息的泄露,篡改,盗版等也困扰这很多公司以及个人。那么如何降低这些风险或者说泄露了信息如何溯源呢?数字水印技术则在这方面提供了一系列追溯的功能,可以追溯信息在那个环节泄露。

数字水印技术由很多,基于多媒体图片,音频以及视频等技术研究比较深入,受限制于文本的特性,单独对文本的数字水印技术研究比较少,一般需要结合特定的文本格式进行解析。

如下是比较常见的文本水印技术。

(1)基于普通文本文件格式信息的技术,包括利用字符或者单词字移的技术、利用文本行距的行移技术、利用字符特征(字体、颜色、高度、宽度、笔画宽度、是否有下划线、是否为斜体等、字符拓扑结构)的技术等;

(2)基于不可见编码的技术,包括替换法、追加法、基于冗余编码的技术、字符的图形与编码相互独立的技术等; 基于文本内容的技术,包括同义词替换技术、基于句法的文本数字水印技术、基于语义的文本数字水印技术等;

(3)基于汉字结构的技术,包括利用偏旁部首的可组合的特性、字符内偏旁部首之间的距离的技术;

(4)基于图像水印技术的技术,包括基于各种空域、变换域的水印嵌入技术;

(5)基于特殊格式文件的技术,例如基于HTML、PDF等特殊文件格式的水印嵌入技术。

二、不可见编码的技术

那么如何单纯的只对文本进行水印技术编码呢?

上面第二点,可以基于”不可见编码的技术”对文本进行水印添加。

Unicode 中有一类格式字符,不可见,不可打印,主要作用于调整字符的显示格式,所以我们将其称为零宽字符。

零宽字符主要有以下几类:

零宽度空格符 (zero-width space) U+200B : 用于较长单词的换行分隔

零宽度非断空格符 (zero width no-break space) U+FEFF : 用于阻止特定位置的换行分隔

零宽度连字符 (zero-width joiner) U+200D : 用于阿拉伯文与印度语系等文字中,使不会发生连字的字符间产生连字效果

零宽度断字符 (zero-width non-joiner) U+200C : 用于阿拉伯文,德文,印度语系等文字中,阻止会发生连字的字符间的连字效果

左至右符 (left-to-right mark) U+200E : 用于在混合文字方向的多种语言文本中(例:混合左至右书写的英语与右至左书写的希伯来语),规定排版文字书写方向为左至右

右至左符 (right-to-left mark) U+200F : 用于在混合文字方向的多种语言文本中,规定排版文字书写方向为右至左

我们可以使用零宽字符的特性对文本进行水印加密。

三、实现

1、代码实现

package com.test.watermark;

/**
 * @author 小白
 * @version 1.0
 * 类说明
 * @date 2020/12/2 9:15
 */
public class WatermarkUtils {
   
   
    private static int WATERMARK_POS_NONE = 0;
    private static int WATERMARK_POS_HEAD = 1;
    private static int WATERMARK_POS_TAIL = 2;
    /**
     * 将字符串转换成二进制字符串,以空格相隔
     *
     * @param input
     * @return
     */
    private String strToBinary(String input) {
   
   
        char[] strChar = input.toCharArray();
        String result = "";
        String tmp = "";
        for (int i = 0; i < strChar.length; i++) {
   
   
            tmp = Integer.toBinaryString(strChar[i]);

            while(tmp.length() < 16) {
   
   
                tmp = "0" + tmp;
            }
            result += tmp;
            result += " ";
        }
        return result.trim();
    }

    /**
     * 将二进制字符串转换成int数组
     *
     * @param binStr
     * @return
     */
    public int[] binstrToIntArray(String binStr) {
   
   
        char[] temp=binStr.toCharArray();
        int[] result=new int[temp.length];
        for(int i=0;i<temp.length;i++) {
   
   
            result[i]=temp[i]-48;
        }
        return
AI文本水印技术解析:从KGW算法到欧盟合规实战指南 数字水印技术通过在数字内容中嵌入隐蔽标识信息,实现版权保护与内容溯源。其核心原理是利用信号处理或编码方法,在不影响感知质量的前提下,将特定信息嵌入载体数据。在人工智能生成内容(AIGC)时代,这项技术被赋予新的使命——为AI生成的文本提供可追溯的技术标识,以应对虚假信息、学术不端等挑战,并满足全球日益严格的AI监管要求。AI文本水印主要分为基于生成过程的“白盒”方案(如KGW算法)和基于后处理的“黑盒”方案,前者通过调整模型推理时的词元选择概率嵌入统计特征,后者则通过同义词替换等规则修改文本。从技术价值看, 阅读详情

相关推荐

数据溯源新利器:利用零宽字符实现文本隐形水印

本文深入解析了利用零宽字符实现文本隐形水印的技术,这是一种极致隐蔽的数据溯源方法。通过将信息编码为Unicode中的不可见字符,可在不影响文本外观的前提下,为敏感文档嵌入隐形标记,有效追踪泄露源头,适用于内部审计与版权保护等场景。

weixin_29279101的博客 201

信号隐藏-数字水印

然后,选取若干个系数用来嵌入水印信息。最后,将嵌入水印后的DCT系数逆变换回时域,得到带有水印信息的音频信号。总之,数字水印技术是一种非常重要的版权保护技术,它可以在原始数据中嵌入特定的信息,来保护原始数据的完整性和版权。本文介绍了一种基于DCT实现音频水印嵌入和提取的方法,并提供相应的Matlab代码,希望可以对相关领域的读者有所帮助。需要注意的是,选取的DCT系数必须具有一定的鲁棒性,使得它们在经历一些常见的信号处理操作后仍能被准确提取出来。

持续更新 198

数字内容安全实验三:文本水印算法

一、实验目的 理解文本水印原理,掌握文本水印算法。使用MATLAB编程实现文本水印算法。 二、实验内容 题目:文本水印 三、实验代码及运行结果 安装工具包cprintf: 实验代码: 运行结果: 四、实验总结/心得 1、cprintf函数不支持对单个字符变换颜色 (可能是由于版本问题吧,控制台不支持实验要求那样的不同颜色输出,可以采用下划线的方式显示,如18对应的二进制位1的位对应的是加下划线那里的字母) (也可不在控制台输出,输出到一个坐标系图上就正常了) 2、网上看到的一种文本水印嵌入及提取方

蓝多多的小仓库 2598

大数据在电力行业的应用案例100讲(二十九)-数据水印在电网企业中提供的有效帮助

随着企业数据共享和数据分发需求的不断增加,数据泄露事件日趋严峻,而数据泄露又会给各大企业造成不可估量的损失。

getusushu的博客 650

数字水印技术:原理、应用与挑战

本文还有配套的精品资源,点击获取 简介:数字水印技术涉及在数字媒体中嵌入不可见或不易察觉的标识信息,主要用于版权保护、内容验证等。技术分为可见水印和不可见水印两种,通过嵌入和检测两个阶段实施。水印的鲁棒性是关键质量指标,根据应用需求可设计不同的鲁棒性水平。该技术应用于图像版权保护、视频内容验证、音频指纹追踪等多个领域。尽管存在挑战,持续的研究和创新对于提升水印的安全性和抗攻...

weixin_33240461的博客 9207

ArcGIS新手必看:HWSD2土壤数据从下载到批量提取TIFF的完整流程

本文详细介绍了ArcGIS中HWSD2土壤数据的完整处理流程,从数据下载、预处理到批量提取TIFF文件。涵盖栅格属性表构建、属性数据连接及性能优化等关键步骤,帮助新手高效掌握HWSD2数据提取技术,提升地理信息数据处理效率。

ll5678的博客 1035

【OpenCV-Python】图像的载入、显示和输出(imread()、imshow()、waitKey()、namedWindow()、imwrite())

图像的载入:imread()函数 imread()函数可以用来非常便捷地读取文件中的图片到Opencv中。这个函数一般需要两个参数: (1)载入图片的路径名。如果图像文件在工程文件夹下,可以直接用文件名读取,如“cat.jpg”,否则需要输入完整的访问路径,如“D:\\test\\lena.png”。这里还有几个tips: imread函数中,一个点代表省略当前文件夹路径,两个点则代表回...

M&Q的博客 1397

Sentaurus TCAD 修改字体

如题

努力学习的IC小白 5759

DeepSeek-V3本地Docker容器化部署

通过以上步骤,你可以在本地上成功通过容器化部署DeepSeek-V3。安装完成后,启动Docker Desktop。如果需要后台运行,可以加上。

u013302168的博客 2121

智能车图像处理24-进阶篇16--三叉路口的判断

这篇文章主要讲述图像处理中如何判断三叉路口并进行补线操作。

taiyuezyh的博客 1万+

论文阅读:Query-Dependent Video Representation for Moment Retrieval and Highlight Detection

近年来,随着视频理解需求的急剧增加,视频时刻检索和高亮检测(MR/HD)成为人们关注的焦点。MR/HD的主要目标是对给定的文本进行视频时刻定位和内容一致性估计,即显著性得分。尽管最近基于transformer的模型带来了一些进步,但我们发现这些方法并不能完全利用给定查询的信息。例如,在预测时刻及其显著性时,有时会忽略文本查询与视频内容之间的相关性。为了解决这个问题,我们引入了基于查询的DETR (QD-DETR),这是一种为MR/HD量身定制的检测transfomer。

qq_42681787的博客 918

如何使用CPU-Z获取内存条频率信息(编程)

当我们需要获取计算机内存条的频率信息时,可以利用CPU-Z这个工具来实现。CPU-Z是一款专门用于获取计算机硬件信息的工具,它提供了API接口,我们可以通过编程的方式来获取内存条频率信息。你可以从CPU-Z官方网站下载适用于你的操作系统的CPU-Z程序,并从安装目录中找到。函数,我们可以初始化CPU-Z,如果返回值不为0,则表示初始化失败。函数来获取内存条频率信息,如果返回值小于等于0,则表示获取失败。函数来初始化CPU-Z并获取内存条频率信息。最后,我们将获取到的内存条频率信息打印输出,并使用。

ByteProwl的博客 456

在 ABAP Cloud 里优雅读取与解析 XML:用 sXML Reader 把接口数据落成结构化 ABAP

ABAP Cloud中XML解析实践 摘要:本文介绍了在ABAP Cloud环境下解析XML数据的最佳实践。针对企业系统中常见的XML格式数据,文章推荐使用sXML库中的CL_SXML_STRING_READER进行流式解析,而非传统的DOM方式。重点解析了命名空间(Namespace)、属性(Attribute)和CDATA等关键概念的处理方法,并比较了两种读取属性的策略:通扫所有属性(NEXT_ATTRIBUTE)和精准取值(GET_ATTRIBUTE_VALUE)。文章提供了完整的ABAP Cloud

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 185

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

上一篇: ELK:ElasticSearch search_type=count不存在了
下一篇: ELK:ElasticSearch UNASSIGNED 分片恢复
胖胖的战士
博客等级 码龄18年 104粉丝 98原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值