• JAVA安卓和C# 3DES加密解密的兼容性问题(2013年8月修改版)


    近 一个项目.net 要调用JAVA的WEB SERVICE,数据采用3DES加密,涉及到两种语言3DES一致性的问题,
    下面分享一下,
    这里的KEY采用Base64编码,便用分发,因为Java的Byte范围为-128至127,c#的Byte范围是0-255
    核心是确定Mode和Padding,关于这两个的意思可以搜索3DES算法相关文章
    一个是 C#采用 CBC Mode,PKCS7 Padding,Java采用CBC Mode,PKCS5Padding Padding,
    另一个是C#采用ECB Mode,PKCS7 Padding,Java采用ECB Mode,PKCS5Padding Padding,
    注意:Java的ECB模式不需要IV
    对字符加密时,双方采用的都是UTF-8编码
    下面是C#代码


     

    Des3Encrypt加密解密


    下面是java代码

    Des3Encrypt加密解密

  • 相关阅读:
    工作总结系列【前端入职前准备事项清单】
    git系列【如何重新设置和修改git账号和密码】
    echarts系列 【vue+echarts实现折线面积图、饼图、柱状图】
    vscode系列【vscode常用插件大全】
    vue系列【兄弟组件之间实现传值】
    vue系列【vue使用ref获取高度为underfind和resetFields()重置功能无效】
    Konva系列【使用Konva实现2d效果】
    three.js系列【3D之Three.js实现三维场景】
    canvas系列【vue和原生js中canvas图形的绘制】
    第二节软件测试基本概念及分类
  • 原文地址:https://www.cnblogs.com/joeylee/p/3274779.html
Copyright © 2020-2023  润新知