加密代码的最佳方式?

2016-08-29 15:39:05 +08:00
 lxy

其实主要是想加密文章。

使用 git 同步加密后的内容,原本想直接用 vim 自带的加密,但是会被 git 识别为二进制文件,也无法跟踪文字改动。

base64 只做了简单转换,而且转换了回车符,导致所有文字都输出在一行。

比如加密以下文字:

这是一句话。
这是另一句。
完。

希望生成加密字符串(这里用 base64 举例):

6L+Z5piv5LiA5Y+l6K+d44CC
6L+Z5piv5Y+m5LiA5Y+l44CC
5a6M44CC

所以有没有一种加密方式能够实现增量加密、方便跟踪改动的?解密至少需要密钥。

2345 次点击
所在节点    问与答
9 条回复
SpicyCat
2016-08-29 19:02:39 +08:00
vim 还自带加密?是什么功能。
gpg 加个 -a 参数就可以让加密后的文件是文本类型。

增量加密?如果加密后还能追踪改动,那加密就无效了吧?
xenme
2016-08-29 19:52:58 +08:00
按行加密不就满足你的需求了
loading
2016-08-29 21:14:49 +08:00
如果你认为 base64 也算加密的话……

我没话说,你爱怎样就怎样。
msg7086
2016-08-29 21:29:39 +08:00
@loading 看 OP 最后那句。
loading
2016-08-29 21:31:32 +08:00
最简单就是楼主建立本地 git ,然后打包压缩加密码再传。
honeycomb
2016-08-29 21:37:41 +08:00
AES 最简单(也是最不安全)的 ECB 配置,加上一些源文件的调整,或许某种程度能满足你的要求?

但是要让它的密文也能通过差分比较的方式反映出修改的话,在编辑时只能用修订(而不能是插入)模式

https://zh.wikipedia.org/wiki/%E5%9D%97%E5%AF%86%E7%A0%81%E7%9A%84%E5%B7%A5%E4%BD%9C%E6%A8%A1%E5%BC%8F#.E7.94.B5.E5.AD.90.E5.AF.86.E7.A0.81.E6.9C.AC.EF.BC.88ECB.EF.BC.89
bingocn
2016-08-29 21:44:14 +08:00
rc4, 按行做流加密
wevsty
2016-08-29 21:50:13 +08:00
反应出加密以后文件的区别没有任何意义不是么?反正也看不懂,要是能看懂加密以后的密文,我只能送楼主真人工智能的称号了。
如果是想要看起来没有加密但是实际上硬盘保存是加密保存的方案,可以使用 bitlocker 这样的分区加密方案,或者选择 EFS 这样的透明加密方案(选择 EFS 请记得备份加密证书,否则数据丢失无法找回)
另外 base64 是编码方法不是加密方法
SourceMan
2016-08-29 22:27:42 +08:00
用方言写,自带加密

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/302466

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX