问题遇到的现象和发生背景
我现在对一个文本中的某几个单词进行加密,并将加密的单词填回去,得到新的文本。
现在我想快速定位已经被加密的单词并解密回去,怎么做到?
我现在对一个文本中的某几个单词进行加密,并将加密的单词填回去,得到新的文本。
现在我想快速定位已经被加密的单词并解密回去,怎么做到?
其实要解决你的这个问题也不是不可以,但是加标识位是最简单的。
一、对加密后的字符串加标识位及长度,如 abcdeadafdafF12asfdllaskjuckaajaF5kduecajioasjioasioas;F为标识符,12是长度,asfdllaskjuc是加密后的串;类似的类推;
二、如微博使用#话题#的方式,取##之间的字符;
三、ajipaiaiaoakewuwqe-qyueee1816期间哦欸经方琼金额非法83.1866的男生帮我7afjnajnajh,如这样子的文本,你需要知道就只能是加密前知道加密的字符位置,就需要单独维护一个位置和加密后字符串长度的表格,然后根据位置来和长度来取出解密回填。
四、维护一个JSON,比如你的字符串原文是 The NoClassDefFoundError class lives in the java.lang package, which stands for No Class Definition Found Error. 现在对进行加密lives 和stands 进行加密,加密后比如是 living 和 stead,加密后就是The NoClassDefFoundError class living in the java.lang package, which stead for No Class Definition Found Error.同时维护一个加密后的JSON 如下:
{
"source01":"The NoClassDefFoundError class ",
"encrypt01":" living ",
"source02":"in the java.lang package, which ",
"encrypt02":" stead ",
"source03":" for No Class Definition Found Error."
}
要想还原时只需对JSON进行解析后针对 encrypt 相关的片段解密,并最终生成解密后的字符串,这种方式灵活度最好,比标志位灵活,但会有数据荣誉存储问题等。
以上希望可以解决你的问题。