Android常用加密库集合

Android常用加密库集合QS,为了整合常用的各大加解密工具,把各大常用加密方式集合成一个工具库,目前包括:1RSA2AES33DES/DES4HMAC_SHA15国密SM2/SM3/SM46MD57DSA使用简例调用eg1(SM4对称加密):AbstractCodercipher=EncryptionManager.getCipher(EncryptionManager.Model….

大家好,又见面了,我是你们的朋友全栈君。

QS,为了整合常用的各大加解密工具,把各大常用加密方式集合成一个工具库,目前包括:
1 RSA
2 AES
3 3DES/DES
4 HMAC_SHA1
5 国密SM2/SM3/SM4
6 MD5
7 DSA


使用简例

调用eg1(SM4对称加密):

AbstractCoder cipher=EncryptionManager.getCipher(EncryptionManager.Model.SM4);
//调用简单加密方法
String cipherText = cipher.simpleEnCode(plainText,key);
//解密
plainText = cipher.simpleDeCode(cipherText,key);

调用eg2(DSA验签):

//密钥对生成种子
String seed="akjh93124kjasfwe23423sd323";
//生成密钥对
DSAKeyHelper.KeyPass keyPass=DSAKeyHelper.genKeyPair(seed);
//获取加密器
AbstractCoder abstractCoder=EncryptionManager.getCipher(EncryptionManager.Model.DSA);
//计算签名
String sign=abstractCoder.digestSignature(value,keyPass.getPrivateKeyHex());
//验证签名
boolean flag=abstractCoder.verifyWithDSA(value.getBytes(),sign,Utils.hexStringToBytes(keyPass.getPublicKeyHex()));

加解密入口在EncryptionManager类中,也可以单独使用其中某一个模块,如:

Sm2Kit sm2kit=new Sm2Kit()
String sign=sm2kit.digestSignature(value,keyPass.getPrivateKeyHex());

更多使用详见github项目地址:
github:https://github.com/lambertlei/UOpenCryption.git
欢迎大家fork,并优化和添加更多加解密工具将其更加完善。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/145642.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • html 的scor属性,scrollheight属性「建议收藏」

    html 的scor属性,scrollheight属性「建议收藏」scrollHeight属性是属于什么范畴?CSS布局HTML小编今天和大家分享问大神,Height属性到底指的是什么html设置overflow-x:scroll;属性后怎么让指定位如果页面不够长(至少窗口长度两倍),那肯定滚动不到一半的位置。否则任何浏览器都不会产生误差。下面的例子输出100个,页面加载的时候会滚动到第51个。window.onload=function(…

  • windows shell命令大全_Windows shell

    windows shell命令大全_Windows shell
    http://www.d6pc.com/Html/?11152.html
     

    shell:Profile
      该命令可以打开用户的总目录。在常规安装的情况下,位置是c:/users/username。你也可以通过点击系统开始菜单上的用户名称访问。也可以通过系统环境变量%userprofile%访问。
    shell:Personal
      这个命令可以打开当前用户的文档文件夹。也可以通过点击开始菜单中的我的文档进行访问。
    shel

    2022年10月17日
  • ubuntu安装pip3一直失败的解决方法

    ubuntu安装pip3一直失败的解决方法ubuntu安装pip3一直失败的解决方法在Ubuntu系统中,有时候因为依赖环境等一系列问题,会导致安装pip3一直提示缺各种各样的东西,一直安装失败,下面提供一种可行的解决方法。首先cd到一个想下载到的文件夹,然后wgethttps://bootstrap.pypa.io/get-pip.py下载完成之后,使用我们需要安装pip的python环境进行执行:sudopython3…

    2022年10月23日
  • JavaScript中window.open()和Window Location href的区别「建议收藏」

    JavaScript中window.open()和Window Location href的区别「建议收藏」目录1:window.location.href的用法:2:window.open()的用法3:window.open和window.location.href的区别1:区别2.window.open不一定是打开一个新窗口!!!!!!!!3:关于重新定位4.:在框架内指定页面打开连接5:是否打开其他网站地址6:window.open()经过设置后的弹…

  • google搜索引擎怎么用_日本搜索引擎

    google搜索引擎怎么用_日本搜索引擎搜索引擎命令大全!1、双引号把搜索词放在双引号中,代表完全匹配搜索,也就是说搜索结果返回的页面包含双引号中出现的所有的词,连顺序也必须完全匹配。bd和Google都支持这个指令。例如搜索:“seo方法图片”2、减号减号代表搜索不包含减号后面的词的页面。使用这个指令时减号前面必须是空格,减号后面没有空格,紧跟着需要排除的词。Google和bd都支持这个指令。

  • Linux错误 E325: 注意 发现交换文件

    Linux错误 E325: 注意 发现交换文件方法1、恢复文件:vim-rnginx.conf恢复以后把.swap文件删掉,再打开时就不会用提示,注意.swap文件是个隐藏文件。可用:la查看。以.开头的是隐藏文件。方法2、ls-a查询隐藏文件,删除后缀名为.swp的文件删除rm-f文件名.swp转载:https://blog.csdn.net/u012686154/article/details…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号