添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

https://square.github.io/retrofit/

https://github.com/square/retrofit/
https://www.jianshu.com/p/81754adcd4ae

android jdk8使用

implementation 'org.bouncycastle:bcprov-jdk15on:1.70'

java.security.NoSuchAlgorithmException: Provider BC does not provide SM4/CBC/PKCS5Padding

generateSm4EcbCipher 替换成它

private Cipher generateSm4EcbCipher(String sm4Name, int sm4Mode, byte[] sm4Key) throws NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException {
//        Cipher cipher = Cipher.getInstance(sm4Name, BouncyCastleProvider.PROVIDER_NAME);
        Cipher cipher = Cipher.getInstance(sm4Name, new BouncyCastleProvider());
        Key secretKey = new SecretKeySpec(sm4Key, SM4_NAME);
        IvParameterSpec ivParameterSpec = new IvParameterSpec(SM4_KEY_IV);
        try {
            cipher.init(sm4Mode, secretKey, ivParameterSpec);
        } catch (InvalidKeyException | InvalidAlgorithmParameterException e) {
            e.printStackTrace();
        return cipher;
                                    赠送jar包:bcprov-jdk15on-1.60.jar;
赠送原API文档:bcprov-jdk15on-1.60-javadoc.jar;
赠送源代码:bcprov-jdk15on-1.60-sources.jar;
赠送Maven依赖信息文件:bcprov-jdk15on-1.60.pom;
包含翻译后的API文档:bcprov-jdk15on-1.60-javadoc-API文档-中文(简体)-英语-对照版.zip;
Maven坐标:org.bouncycastle:bcprov-jdk15on:1.60;
标签:jdk15on、bouncycastle、bcprov、jar包、java、中英对照文档;
使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。
人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
双语对照,边学技术、边学英语。
                                    安卓中,不管是内网还是外网,数据的传输首要考虑就是安全问题,尤其是用户信息,以及各种密码等敏感信息。
所以说,对数据的加密是很有必要的,尤其是当下物联网蓬勃发展的今天,数据安全尤为重要。
因此本人总结了一下安卓中几种加密方式的实现:
① MD5:一种不可逆的加密算法,常用于只需加密无需解密的数据上,比如用户密码,也常用来保证数据的完整性,因为数据被篡改后,其加密后的MD5也会
                                    BouncyCastle/bin/BouncyCastleTest.jadBouncyCastle/bin/BouncyCastleTest.jarBouncyCastle/build/com/enterprisej2me/BouncyCastleTest/MIDlets/AESFast.classBouncyCastle/build/com/enterprisej2me/BouncyCastle...
                                    在对接银行时,其提供的自定义的包中依赖的一个加解密包 bcprov-jdk15on-1.56是1.56 版本,这版中某方法或者类的作用域是public,而在我们项目中引用的bcprov-jdk15on-1.68是更高版本的1.68的,在这版中不是公开的,存在冲突。由于类加载机制,在加载时加载的是高版本的,因此引入的银行的包跑不通。链接:百度网盘 请输入提取码提取码:9fr0      在rule.txt中输入rule org.bouncycastle.**  org.zm.bouncycastle.@1  
1. 解除java jdk政策限制
相应配置文件下载地址
jdk6→http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html
jdk7→http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html
jdk8→http://www.oracle.com/technetwork/
                                    |我正在尝试实现时间戳请求,如下所示:http://bouncy-castle.1462172.n4.nabble.com/Timestamp-request-and-response-td1558231.html在j2se中,它工作正常,但是在android上,我收到IllegalAccessError。Logcat输出:致命异常:主要java.lang.IllegalAccessError: ...
//AES256加密
private byte[] AESEncrypt(String content, byte[] key, byte[] iv){
  byte[] byteContent = content.getBytes("utf-8");
//  Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()
                                    需要调用removeProvider方法后再调用addProvider。打印BC版本号,会发现没有调用成功。避免内存泄漏,复用provider。build.gradle需要引入。
                                    在运行android应用程序时可能会出现java.lang.NoClassDefFoundError: org.bouncycastle.crypto.engines.RSAEngine这样的问题,导致程序运行直接崩溃掉。
原因:在android高版本的SDK里面有Android Dependencies 这个目录,它会将你引用的第三方jar包放置该目录下,这样才能引用你所加的类库,但是当导入别
使用对接方提供的javaDemo,然后报这个错java.security.NoSuchAlgorithmException:Provider BC does not provide SM4/ECB/PKCS5Padding
判断是jar包版本的问题,导入同版本的jar包还是报这个错,然后一直是在jdk中Cipher类和android的Cipher类找不同。
最后是在众多文章中找到了打印版本号的方法:Security.getProvider(BouncyCastle
Tronj是一个轻量级的SDK,其中包含用于处理TRON系统合约和智能合约的库。
 Tronj使使用Java轻松构建TRON应用程序变得容易。
 Tronj文档:  ://tronjdocument.readthedocs.io/en/latest/
如何使用
Gradle设置
添加回购设置: 
repositories {
    maven {
        url  " https://dl.bintray.com/tronj/tronj "
 然后添加所需的软件包作为依赖项。 
dependencies {
    // protobuf & grpc
    implementation ' com.google.protobuf:protobuf-java:3.11.0 '
    implementation ' org.tron.tronj:abi
Provider:AndroidKeyStoreBCWorkaround: version:1.0, Provider:CertPathProvider: version:1.0, url: http://z.kungfualumni.com/1/, Provider:HarmonyJSSE: version:1.0, Provider:AndroidOpenSSL: version:1.0, Provi...