首页
社区
课程
招聘
求加密大神指点迷津
2019-6-28 14:13 13394

求加密大神指点迷津

2019-6-28 14:13
13394
原始内容(text1)  -->  加密内容(text2)

请问使用什么算法,可以同时保证以下3点:
1. text2和text1的大小相等;
2. 只需要text1本身的内容,就可以判断text1为解密内容,只需要text2本身的内容,就可以判断text2为加密内容;
3. 只需要text2本身的内容,就可以解密出text1。


[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

收藏
点赞0
打赏
分享
最新回复 (16)
雪    币: 6737
活跃值: (796)
能力值: ( LV13,RANK:393 )
在线值:
发帖
回帖
粉丝
卓桐 4 2019-6-28 14:31
2
0
菜鸟答一下,首推rc4,加密后长度一致。其他的算法标准实现,比如aes128,你的明文要刚好是16的倍数,而且不填充才能保证长度一致。
第2点不是很理解,只需要text1本身的内容,就可以判断text1为解密内容?啥意思明文和和解密后明文对比?第三,你是指连密钥都不需要吗?如果密码都不需要那rc4也不行。
雪    币: 6737
活跃值: (796)
能力值: ( LV13,RANK:393 )
在线值:
发帖
回帖
粉丝
卓桐 4 2019-6-28 14:42
3
0
如果不需要密钥,那就是密文中自带密钥?例如4个字节,1和4异或替换1、2和3异或替换2、3和4异或替换3、最后的4和2异或替换4,类似这样自定义的吗解的时候按顺序异或?
最后于 2019-6-28 14:50 被卓桐编辑 ,原因:
雪    币: 2271
活跃值: (9988)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
jmpcall 3 2019-6-28 15:38
4
0
卓桐 如果不需要密钥,那就是密文中自带密钥?例如4个字节,1和4异或替换1、2和3异或替换2、3和4异或替换3、最后的4和2异或替换4,类似这样自定义的吗解的时候按顺序异或?
是的,就是密文自带密钥的意思,同时也要保持加密前后的文件大小不变,还要有办法判断文件是否加密过
雪    币: 6737
活跃值: (796)
能力值: ( LV13,RANK:393 )
在线值:
发帖
回帖
粉丝
卓桐 4 2019-6-28 16:34
5
0
xinpoo 是的,就是密文自带密钥的意思,同时也要保持加密前后的文件大小不变,还要有办法判断文件是否加密过
呃,其实我很好奇你为什么会有这样的需求
雪    币: 91
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
sendwave 2019-11-26 20:22
6
0
text2[0] = text1[0] ^ k,即明文首字母与字母k异或,作为密文首字母;
text2[i] = text1[i] ^ text2[i-1]

如此可满足你要求的3点(前提是text1为普通字符串,不包含二进制内容)。
雪    币: 10845
活跃值: (1049)
能力值: (RANK:190 )
在线值:
发帖
回帖
粉丝
看场雪 3 2019-11-27 12:57
7
0
亲爱的LZ啊
如果真的存在你说的这种算法
如果m1加密之后为m2(长度不变)
然后再把m2加密之后得到m3(长度还不变)
然后我来问你,m2是明文?还是密文?
你认为答案是什么才对呢?
雪    币: 2271
活跃值: (9988)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
jmpcall 3 2019-11-27 15:03
8
0
看场雪 亲爱的LZ啊 如果真的存在你说的这种算法 如果m1加密之后为m2(长度不变) 然后再把m2加密之后得到m3(长度还不变) 然后我来问你,m2是明文?还是密文? 你认为答案是什么才对呢?
由于有第2条限制,所以通过m2本身,可以知道它已经是密文,再次加密,可以保持不变。
雪    币: 2271
活跃值: (9988)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
jmpcall 3 2019-11-27 15:23
9
0
sendwave text2[0] = text1[0] ^ k,即明文首字母与字母k异或,作为密文首字母; text2[i] = text1[i] ^ text2[i-1] 如此可满足你要求的3点(前提是te ...
那这样是要通过是否包含"非普通"字符,判断是否为密文吗?这样实用性就不行了
雪    币: 10845
活跃值: (1049)
能力值: (RANK:190 )
在线值:
发帖
回帖
粉丝
看场雪 3 2019-11-27 21:32
10
0
xinpoo 由于有第2条限制,所以通过m2本身,可以知道它已经是密文,再次加密,可以保持不变。
你要禁止对一个‘看似密文’的明文加密吗?
雪    币: 2271
活跃值: (9988)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
jmpcall 3 2019-11-28 09:18
11
0
首先我要明确一下,我发的是一个问题,不是一个肯定,我本身对加解密不太了解,我是因为一个实际的需求产生了这样的疑问,不是为了过来抬扛。问题的第2个限制为"只需要text1本身的内容,就可以判断text1为解密内容,只需要text2本身的内容,就可以判断text2为加密内容",并没有出现"看似"一词,这个限制虽然很理想化,但实际的软件,谁能避开"看似"这个问题,即使一段内容完全符合某种加密格式,你非要说这就是我亲手写出来的明文,不是通过软件加密得到的,谁能奈你何呢?
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
sjdkx 2019-11-28 10:12
12
0
如果都是看不懂的乱码,那什么也不能判断。流密码加密文件长度可以不变。
雪    币: 184
活跃值: (49)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
tilamisu 2019-11-29 17:45
13
0
linux 内核有个 fs\ecryptfs 文件系统,做透明加解密的,看符不符合你的要求。

。。。。原贴都半年了,要是项目,早换方案了吧。
最后于 2019-11-29 17:47 被tilamisu编辑 ,原因:
雪    币: 2271
活跃值: (9988)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
jmpcall 3 2019-11-29 17:56
14
0
tilamisu linux 内核有个 fs\ecryptfs 文件系统,做透明加解密的,看符不符合你的要求。。。。。原贴都半年了,要是项目,早换方案了吧。
好的,我了解一下
雪    币: 6680
活跃值: (2591)
能力值: ( LV4,RANK:52 )
在线值:
发帖
回帖
粉丝
不对 2019-11-29 18:12
15
1
LZ你说的这个不就是右击添加到zip压缩包么?
雪    币: 397
活跃值: (799)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wsy 2019-12-21 20:34
16
0
简单。
每字节最高位比特取反。
雪    币: 0
活跃值: (35)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
walker苏 2020-3-17 15:13
17
0
你这方案必然会被淘汰的,密文直接就可解密,那等于是算法保密的加密方式,密码学上不提倡使用这样,或者说是禁止。。。因为真的不安全。等于没加密
游客
登录 | 注册 方可回帖
返回