首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >文件系统中Json文件的加密/解密

文件系统中Json文件的加密/解密
EN

Stack Overflow用户
提问于 2015-12-28 04:56:00
回答 2查看 6.9K关注 0票数 2

我们需要加密json文件以及其他文件格式(例如,文本,主要是json ),这些文件将存储在文件系统中(很可能是窗口),并将使用usb或其他媒体移动到批处理系统中并在那里解密。

请建议我们在这方面的最佳做法。我正在对此进行研究,并发现了JOSE对象的签名和加密,但我只想在前进之前确定一下。

谢谢XslGuy

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-28 11:44:57

你似乎想要加密文件而不是对象。这在很大程度上排除了JOSE,因为这是关于加密/签名对象,而不是文件。

这似乎是PGP加密的主要候选。使用PGP,您可以将私钥保存在后台办公室,在那里进行加密,并使用PGP公钥进行加密。这样,加密系统就不必知道加密密钥了。

有许多库和密钥管理工具来执行PGP文件的加密/解密,这使得对加密/解密的测试变得非常容易。

对于Java来说,弹跳城堡将是主要的候选对象。如果您遇到麻烦,开发邮件列表的B儿GY城堡是主要的信息来源-首先搜索它。

票数 0
EN

Stack Overflow用户

发布于 2015-12-28 14:34:26

这里是一个不使用第三方库的简单加密/解密实现。这是一个河豚的实现。

代码语言:javascript
复制
public static String encrypter(String value) {   
        try {   
            SecretKeySpec key = new SecretKeySpec("My_Secret_Key".getBytes(), "Blowfish");
            Cipher cipher = Cipher.getInstance("Blowfish");   
            cipher.init(Cipher.ENCRYPT_MODE, key);   
            byte[] plainTxtBytes = value.getBytes("UTF-8");   
            byte[] encBytes = cipher.doFinal(plainTxtBytes);   
            return new sun.misc.BASE64Encoder().encode(encBytes);   
        } catch (Exception ex) {   
            return value;   
        }   
    }   

    public static String decrypter(String value) {   
        try {   
            SecretKeySpec key = new SecretKeySpec("My_Secret_Key".getBytes(), "Blowfish");
            Cipher cipher = Cipher.getInstance("Blowfish");   
            cipher.init(Cipher.DECRYPT_MODE, key);   
            byte[] encBytes = new sun.misc.BASE64Decoder().decodeBuffer(value);   
            byte[] plainTxtBytes = cipher.doFinal(encBytes);   
            return new String(plainTxtBytes);   
        } catch (Exception ex) {   
            return value;   
        }   
  }

河豚是一种对称密钥分组密码.了解更多关于it的信息,这里。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34487879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档