摘要:
在iOS上以前暂时屏蔽https使用http的接口,将在未来被苹果拒绝; 之前传苹果会在2017年1月1日强制要求支持https,但是现在苹果又延迟该计划了 https://developer.apple.com/news/?id=12212016b 所以服务器接口还是尽快支持https吧; 苹果A 阅读全文
摘要:
iOS 上 Security.framework为我们提供了安全方面相关的api; Security框架提供的RSA在iOS上使用的一些小结 支持的RSA keySize 大小有:512,768,1024,2048位 支持的RSA 填充方式有三种:NOPadding,PKCS1,OAEP 三种方式 阅读全文
摘要:
在之前我们在openssl上和ios上分别测试了 AES256位cbc模式的加密和解密 今天用java提供的api来测试一下;进而确定一下在PC,iOS,安卓上三个平台下的加密解密数据; 1. 首先通过查询资料了解到: java的jdk 不支持256位AES密钥,需要安装扩展包,以下会提到 java 阅读全文
摘要:
CommonCrypto 为苹果提供的系统加密接口,支持iOS 和 mac 开发; 不仅限于AES加密,提供的接口还支持其他DES,3DES,RC4,BLOWFISH等算法, 本文章主要讨论AES在iOS的处理,从接口资料描述和测试来看CommonCrypto 与AES相关的一些小结, 支持的AES 阅读全文
摘要:
哈希表是一种数据结构,通过在记录的存储位置和它的关键字之间建立确定的对应关系,来快速查询表中的数据; openssl lhash.h 为我们提供了哈希表OPENSSL_LHASH 的相关接口,我们可以直接使用,用来存放各种数据; 哈希表类似前面提到的栈,但是哈希表的优势是查询速度快。 1. lhas 阅读全文
摘要:
堆栈是两种不同的数据结构; 堆:数据先进先出; 栈:数据先进后观; 在stack.h 中 openssl 为我们提供了一个通用的栈,利用提供的接口我们可以方便的用此栈来存放开发中的任意数据。 openssl stack 栈类似于数组,元素下标从0开始; 1. openssl stack 主要接口有 阅读全文
摘要:
openssl pem.h 中提供了关于pem格式密钥对的操作接口 通常使用.pem的格式文件来保存openssl 生成的密钥对; 在终端下 cat xxx.pem 可以看到 BEGIN RSA PRIVATE KEY XXXX END RSA PRIVATE KEY 密钥数据进行了BASE64编码 阅读全文
摘要:
openssl evp RSA 加密解密 可以直接使用RSA.h 提供的接口 如下测试使用EVP提供的RSA接口 1. EVP提供的RSA 加密解密 主要接口: 测试代码 先生成 EVP_KEY 测试加密解密 执行结果: src=01234567890123456789012345678901234 阅读全文
摘要:
1. 简介 openssl rsa.h 提供了密码学中公钥加密体系的一些接口, 本文主要讨论利用rsa.h接口开发以下功能 公钥私钥的生成 公钥加密,私钥解密 私钥加密,公钥解密 签名:私钥签名 验证签名:公钥验签 2. 生成公钥私钥对 主要接口, 接口调用需要先生成一个大数,如下生成密钥对示例 打 阅读全文
摘要:
openssl evp 对称加密(AES_ecb,ccb) evp.h 封装了openssl常用密码学工具,以下主要说对称加密的接口 1. 如下使用 aes_256_ecb 模式的加密解密测试代码 如上这种init,update,final的调用方式和之前 提供的哈希接口调用方式差不多 大致流程 E 阅读全文