有没有大佬会写加密算法的

烦人啊,写个论文,导师非要我写个数据加密算法。
我写的是多商户在线充值系统,商户的数据库在本地。
商户和服务端之间通讯需要把数据加密,我感觉每个商户加密的都不一样哇。
还要解密,烦人哦。
本来我和导师说了这个数据加密没必要,用签名就行了。
他跟我说这也不要那也不要那论文也不要写了。
回复列表(9|隐藏机器人聊天)
  • @Ta / 2019-04-03 / /

    https不行?加密算法不建议自己写,可靠性远不如哪些成熟的算法。自己找一个加密算法套上去就行了
    小米5黑色高配版

  • @Ta / 2019-04-03 / /
    加密算法自己造轮子?hehe
  • @Ta / 2019-04-03 / /

    配置ssl就行了,再阐述一个ssl的原理。传输的数据是已经加过密,再把ca机构作用说一说搞定,你不要给导师说加密没必要用签名就行了之类的话,你就给他说配置ssl证书后在传输过程中已经加过密了,而且过程还很复杂的。你的导师不会想让你自己实现(非)对称加密,签名指纹的整个过程吧~~

  • @Ta / 2019-04-03 / /
    @Curtion@iola1999@幻阳化翼,问题是非要我写哇。我都烦死了
  • @Ta / 2019-04-03 / /

    @快乐大本营
    如果只是加密,任何一个对称加密就可以,但是密钥的传输是个问题,所以需要非对称加密先来传输 对称加密的需要的密钥,但是公钥私钥谁都可以生成,为了防止有人伪装服务器还需要数字证书的介入,这时候就需要CA机构了,等做完这些。 恭喜你,你完成了https做的一切。
    只是单纯交差的话,你就用对称加密/非对称加密就行了,就不用考虑其它安全性问题了,至于算法网上随便找一个就行了。
    真的要你写过程就从大数的质因数分解方面入手,在P/NP问题没有解决之前还是挺安全的。更深的原理我不清楚了,可能你需要查相关文献了

  • @Ta / 2019-04-03 / /

    @快乐大本营,这种情况下,我不会去造轮子,直接拿现成的des-cbc加密、解密套上去,把业务流程详细点描述就交差。

    // 检查函数可用性
    if (!function_exists("openssl_encrypt")) {
        die('请打开 php_openssl 扩展!');
    }
    /**
     * des-cbc加密
     * 在线验证DES查错网:http://tool.chacuo.net/cryptdes
     * @param string  $data 要被加密的数据
     * @param string  $key 加密使用的key
     * @param string  $iv 偏移量
     */
    function des_cbc_encrypt($data, $key, $iv){
        return openssl_encrypt ($data, 'des-cbc', $key, 0, $iv);
    }
    
    /**
     * des-cbc解密
     * @param string  $data 加密数据
     * @param string  $key 加密使用的key
     * @param string  $iv 偏移量
     */
    function des_cbc_decrypt($data, $key, $iv){
        return openssl_decrypt ($data, 'des-cbc', $key, 0, $iv);
    }
    

    备注:详细的原理我也不太懂,我只是会用轮子,貌似 $key 需要等于 $iv,而且要≤8位字符;

    $key = strtoupper( substr( md5( '公钥' ),0,8 ) );// 字符串截取
    

    我上次就是这么取8位的

  • @Ta / 2019-04-03 / /
    @TabKey9@Curtion,还要我对比其他算法写出自己这套算法的优势,明显就是要造一个大轮子
  • @Ta / 2019-04-03 / /
    @Curtion,看情况应该是这样,感觉是要写一个比非对称算法还要好的算法。我tm
  • @Ta / 2019-04-03 / /
    @快乐大本营,你非得这么想吗?会造轮子就造一个,不会造就去了解别人造的轮子,你可以百度看看砖家是怎么评价各种加密解密算法优缺点的,摘抄几句经典的,再加上自己的口水话过渡一下(◔◡◔)
添加新回复
回复需要登录