当前位置:主页 > 书籍配套资源 > PKI配套资源
《PKI网络安全认证技术与编程实现》源代码

《PKI网络安全认证技术与编程实现》源代码

  • 更新:2022-01-07
  • 大小:79.76 MB
  • 类别:PKI
  • 作者:马臣云,王彦
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

内容介绍

PKI是解决开放式互联网络信息安全需求的成熟体系。PKI体系支持身份认证,信息传输、存储的完整性,消息传输、存储的机密性,以及操作的不可否认性。本书从实战出发,介绍了PKI应用开发过程和细节。全书共32章,分6篇,主要内容包括PKI基础知识、OpenSSL开发、CrytoAPI开发、Java Security开发、电子商务网站应用、PKI技术应用等,涉及C语言、Java语言、JSP、ASP/ASP.NET、PHP等开发语言。为了方便读者深入了解PKI,本书按照先原理、再讲解、再实战的方式进行,并且全部实例和软件都保存在随书赠送的光盘中。

本书适合PKI应用开发人员、企业网络管理人员以及大、中专院校师生阅读。

目录

  • 第1篇PKI技术概述
  • 第1章PKI基础知识
  • 1.1PKI概述
  • 1.2什么是数字证书
  • 1.2.1数字认证的原理
  • 1.2.2数字认证是如何颁发的
  • 1.3为什么要使用数字证书
  • 1.3.1信息传输的保密性
  • 1.3.2交易者身份的确定性
  • 1.3.3发送信息的不可否认性
  • 1.3.4数据交换的完整性
  • 1.4加密技术
  • 1.4.1对称加密技术
  • 1.4.2非对称加密技术
  • 1.5数字签名技术
  • 1.5.1数字签名技术
  • 1.5.2时间戳技术
  • 第2篇OpenSSL开发
  • 第2章OpenSSL入门
  • 2.1OpenSSL概述
  • 2.1.1OpenSSL的组成
  • 2.1.2OpenSSL的优缺点
  • 2.2如何下载编译
  • 2.2.1Windows下编译OpenSSL
  • 2.2.2Linux下编译OpenSSL
  • 2.3如何搭建开发环境
  • 2.3.1Windows下搭建OpenSSL开发环境
  • 2.3.2Linux下搭建OpenSSL开发环境
  • 2.4小结
  • 第3章OpenSSL加密和解密
  • 3.1概述
  • 3.2函数介绍
  • 3.2.1初始化函数EVP_CIPHER_CTX_init
  • 3.2.2加密初始化函数EVP_EncryptInit_ex
  • 3.2.3数据加密Update函数EVP_EncryptUpdate
  • 3.2.4数据加密结束函数EVP_EncryptFinal_ex
  • 3.2.5解密初始化函数EVP_DecryptInit_ex
  • 3.2.6数据解密Update函数EVP_DecryptUpdate
  • 3.2.7数据解密结束函数EVP_DecryptFinal_ex
  • 3.3实例应用——数据加密
  • 3.3.1流程分析
  • 3.3.2实例实现
  • 第4章OpenSSL消息摘要
  • 4.1概述
  • 4.2函数介绍
  • 4.2.1初始化函数EVP_MD_CTX_init
  • 4.2.2设置摘要算法函数EVP_DigestInit_ex
  • 4.2.3摘要Update函数EVP_DigestUpdate
  • 4.2.4摘要结束函数EVP_DigestFinal_ex
  • 4.2.5计算摘要函数EVP_Digest
  • 4.3实例应用
  • 4.3.1流程分析
  • 4.3.2实例实现
  • 第5章OpenSSL签名和验证
  • 5.1函数介绍
  • 5.1.1签名初始化函数EVP_SignInit_ex
  • 5.1.2签名Update函数EVP_SignUpdate
  • 5.1.3签名结束函数EVP_SignFinal
  • 5.1.4验证初始化函数EVP_VerifyInit_ex
  • 5.1.5验证Update函数EVP_VerifyUpdate
  • 5.1.6验证结束函数EVP_VerifyFinal
  • 5.2实例应用
  • 5.2.1流程分析
  • 5.2.2实例实现
  • 第6章OpenSSL Base64编解和解码
  • 6.1函数介绍
  • 6.1.1Base64编码初始化函数EVP_EncodeInit
  • 6.1.2Base64编码Update函数EVP_EncodeUpdate
  • 6.1.3Base64编码结束函数EVP_EncodeFinal
  • 6.1.4Base64编码函数EVP_EncodeBlock
  • 6.1.5Base64解码函数EVP_DecodeBlock
  • 6.1.6Base64解码初始化函数EVP_DecodeInit
  • 6.1.7Base64解码Update函数EVP_DecodeUpdate
  • 6.1.8Base64解码结束函数EVP_DecodeFinal
  • 6.2实例应用
  • 6.2.1流程分析
  • 6.2.2实例实现
  • 第7章OpenSSL证书操作
  • 7.1函数介绍
  • 7.1.1DER编码转换为内部结构体函数d2i_X509
  • 7.1.2获得证书版本函数X509_get_version
  • 7.1.3获得证书序列号函数X509_get_serialNumber
  • 7.1.4获得证书颁发者信息函数X509_get_issuer_name
  • 7.1.5获得证书拥有者信息函数X509_get_subject_name
  • 7.1.6获得证书有效期的起始日期函数X509_get_notBefore
  • 7.1.7获得证书有效期的终止日期函数X509_get_notAfter
  • 7.1.8获得证书公钥函数X509_get_pubkey
  • 7.1.9创建和释放证书存储区函数X509_STORE_new、X509_STORE_free
  • 7.1.10向证书存储区添加证书函数X509_STORE_add_cert
  • 7.1.11向证书存储区添加证书吊销列表函数X509_STORE_add_crl
  • 7.1.12创建证书存储区上下文环境函数X509_STORE_CTX_new
  • 7.1.13释放证书存储区上下文环境函数X509_STORE_CTX_free
  • 7.1.14初始化证书存储区上下文环境函数X509_STORE_CTX_init
  • 7.1.15验证证书函数X509_verify_cert
  • 7.2实例应用
  • 7.2.1流程分析
  • 7.2.2实例实现
  • 第8章SSL/TLS编程
  • 8.1函数介绍
  • 8.1.1初始化SSL算法库函数SSL_library_init
  • 8.1.2初始化SSL上下文环境变量函数SSL_CTX_new
  • 8.1.3释放SSL上下文环境变量函数SSL_CTX_free
  • 8.1.4设置SSL证书函数SSL_CTX_use_certificate_file
  • 8.1.5设置SSL私钥函数SSL_CTX_use_PrivateKey_file
  • 8.1.6设置SSL证书函数SSL_CTX_use_certificate
  • 8.1.7设置SSL私钥函数SSL_CTX_use_PrivateKey
  • 8.1.8检查SSL私钥函数SSL_CTX_check_private_key
  • 8.1.9新建SSL句柄函数SSL_new
  • 8.1.10释放SSL句柄函数SSL_free
  • 8.1.11设置socket句柄函数SSL_set_fd
  • 8.1.12建立SSL链接函数SSL_connect
  • 8.1.13接受SSL链接函数SSL_accept
  • 8.1.14获得SSL链接使用的证书SSL_get_peer_certificate
  • 8.1.15发送SSL数据函数SSL_write
  • 8.1.16读取SSL数据函数SSL_read
  • 8.2实例应用
  • 8.2.1流程分析
  • 8.2.2实例实现
  • 第9章开发实例——文件保险箱
  • 9.1功能预览
  • 9.1.1文件加密
  • 9.1.2文件解密
  • 9.2流程分析
  • 9.2.1文件加密函数Encrypt_File
  • 9.2.2文件解密函数Decrypt_File
  • 9.3功能实现
  • 第10章开发实例——安全通信软件
  • 10.1功能预览
  • 10.2流程分析
  • 10.2.1服务端流程分析
  • 10.2.2客户端流程分析
  • 10.3功能实现
  • 10.3.1服务端
  • 10.3.2客户端
  • 第11章开发实例——安全报文系统
  • 11.1功能预览
  • 11.1.1发送方产生安全报文
  • 11.1.2接收方解密安全报文
  • 11.2流程分析
  • 11.2.1发送方流程分析
  • 11.2.2接收方流程分析
  • 11.3功能实现
  • 11.3.1发送方
  • 11.3.2接收方
  • 第3篇CrytoAPI开发
  • 第12章CryptoAPI开发入门
  • 12.1CryptoAPI的组成
  • 12.2CryptoAPI的优缺点
  • 12.3如何搭建开发环境
  • 第13章密码服务提供者CSP函数
  • 13.1函数介绍
  • 13.1.1连接CSP函数CryptAcquireContext
  • 13.1.2枚举CSP函数CryptEnumProviders
  • 13.1.3获得默认CSP函数CryptGetDefaultProvider
  • 13.1.4设置默认CSP函数CryptSetProvider
  • 13.1.5获得CSP参数属性函数CryptGetProvParam
  • 13.1.6设置CSP参数函数CryptSetProvParam
  • 13.1.7断开CSP函数CryptReleaseContext
  • 13.2实例应用
  • 13.2.1流程分析
  • 13.2.2实例实现
  • 第14章密钥的产生和交换函数
  • 14.1函数介绍
  • 14.1.1生成函数CryptGenKey
  • 14.1.2派生密钥函数CryptDeriveKey
  • 14.1.3销毁密钥函数CryptDestroyKey
  • 14.1.4复制密钥函数CryptDuplicateKey
  • 14.1.5导出密钥函数CryptExportKey
  • 14.1.6导入密钥函数CryptImportKey
  • 14.1.7获得密钥参数函数CryptGetKeyParam
  • 14.1.8获得密钥参数函数CryptSetKeyParam
  • 14.1.9获得密钥参数函数CryptGenRandom
  • 14.2实例应用
  • 14.2.1流程分析
  • 14.2.2实例实现
  • 第15章数据的加密和解密函数
  • 15.1函数介绍
  • 15.1.1数据加密函数CryptEncrypt
  • 15.1.2数据解密函数CryptDecrypt
  • 15.2实例应用
  • 15.2.1流程分析
  • 15.2.2实例实现
  • 第16章哈希和数字签名函数
  • 16.1函数介绍
  • 16.1.1创建哈希函数CryptCreateHash
  • 16.1.2销毁哈希CryptDestroyHash
  • 16.1.3复制哈希函数CryptDuplicateHash
  • 16.1.4获得哈希参数函数CryptGetHashParam
  • 16.1.5设置哈希参数函数CryptSetHashParam
  • 16.1.6哈希会话密钥函数CryptHashSessionKey
  • 16.1.7哈希数据函数CryptHashData
  • 16.1.8对哈希签名函数CryptSignHash
  • 16.1.9对哈希验证签名函数CryptVerifySignature
  • 16.2实例应用
  • 16.2.1流程分析
  • 16.2.2实例实现
  • 第17章证书和证书库函数
  • 17.1函数介绍
  • 17.1.1打开证书库函数CertOpenStore
  • 17.1.2关闭证书库函数CertCloseStore
  • 17.1.3从证书库枚举证书函数CertEnumCertificatesInStore
  • 17.1.4从证书库查找证书函数CertFindCertificateInStore
  • 17.1.5创建证书句柄函数CertCreateCertificateContext
  • 17.1.6释放证书句柄函数CertFreeCertificateContext
  • 17.1.7获得证书句柄属性函数CertGetCertificateContextProperty
  • 17.1.8设置证书句柄属性函数CertSetCertificateContextProperty
  • 17.1.9获得证书主题名称函数CertGetNameString
  • 17.2实例应用
  • 17.2.1流程分析
  • 17.2.2实例实现
  • 第18章开发实例——文件保险箱
  • 18.1功能预览
  • 18.1.1文件加密
  • 18.1.2文件解密
  • 18.2流程分析
  • 18.2.1文件加密函数Encrypt_File
  • 18.2.2文件解密函数Decrypt_File
  • 18.3功能实现
  • 第19章开发实例—安全报文系统
  • 19.1功能预览
  • 19.1.1安全报文发送
  • 19.1.2安全报文接收
  • 19.2流程分析
  • 19.2.1发送方流程分析
  • 19.2.2接收方流程分析
  • 19.3功能实现
  • 19.3.1发送方
  • 19.3.2接收方
  • 第4篇Java Security开发
  • 第20章Java Security开发入门
  • 20.1设计原理和体系结构
  • 20.1.1设计原理
  • 20.1.2体系结构
  • 20.2主要概念
  • 20.2.1引擎类和算法
  • 20.2.2实现和提供者
  • 20.2.3获得实现实例的factory(工厂)方法
  • 20.3主要类和接口
  • 20.4搭建开发环境
  • 第21章Java消息摘要
  • 21.1MessageDigest类函数介绍
  • 21.1.1构造方法
  • 21.1.2生成实例对象函数getInstance(1)
  • 21.1.3生成实例对象函数getInstance(2)
  • 21.1.4获得密码服务提供者函数getProvider
  • 21.1.5计算摘要函数update(1)
  • 21.1.6计算摘要函数update(2)
  • 21.1.7计算摘要函数update(3)
  • 21.1.8计算摘要函数update(4)
  • 21.1.9完成计算摘要函数digest(1)
  • 21.1.10完成计算摘要函数digest(2)
  • 21.1.11完成计算摘要函数digest(3)
  • 21.1.12比较摘要值函数isEqual
  • 21.1.13对象重置函数reset
  • 21.1.14获得摘要算法函数getAlgorithm
  • 21.1.15获得摘要值长度函数getDigestLength
  • 21.2实例应用
  • 21.2.1流程分析
  • 21.2.2实例实现
  • 第22章Java加密和解密
  • 22.1KeyGenerator类函数介绍
  • 22.1.1构造方法
  • 22.1.2生成实例对象函数getInstance(1)
  • 22.1.3生成实例对象函数getInstance(2)
  • 22.1.4获得对象密码算法函数getAlgorithm
  • 22.1.5获得密码服务提供者函数getProvider
  • 22.1.6初始化密钥生成器函数init(1)
  • 22.1.7初始化密钥生成器函数init(2)
  • 22.1.8初始化密钥生成器函数init(3)
  • 22.1.9初始化密钥生成器函数init(4)
  • 22.1.10初始化密钥生成器函数init(5)
  • 22.1.11生成密钥函数generateKey
  • 22.2Cipher类函数介绍
  • 22.2.1构造方法
  • 22.2.2生成实例对象函数getInstance(1)
  • 22.2.3生成实例对象函数getInstance(2)
  • 22.2.4获得密码服务提供者函数getProvider
  • 22.2.5获得密码算法函数getAlgorithm
  • 22.2.6获得密码算法分组长度函数getBlockSize
  • 22.2.7获得输出数据的长度函数getOutputSize
  • 22.2.8获得初始化向量函数getIV
  • 22.2.9密码对象初始化函数init(1)
  • 22.2.10密码对象初始化函数init(2)
  • 22.2.11密码对象初始化函数init(3)
  • 22.2.12密码对象初始化函数init(4)
  • 22.2.13计算加密或解密函数update(1)
  • 22.2.14计算加密或解密函数update(2)
  • 22.2.15计算加密或解密函数update(3)
  • 22.2.16计算加密或解密函数update(4)
  • 22.2.17结束加密或解密函数doFinal(1)
  • 22.2.18结束加密或解密函数doFinal(2)
  • 22.3实例应用
  • 22.3.1流程分析
  • 22.3.2实例实现
  • 第23章Java数字签名和验证
  • 23.1KeyPairGenerator类函数介绍
  • 23.1.1构造方法
  • 23.1.2获得密码算法函数getAlgorithm
  • 23.1.3生成实例对象函数getInstance(1)
  • 23.1.4生成实例对象函数getInstance(2)
  • 23.1.5密码对象初始化函数initialize(1)
  • 23.1.6密码对象初始化函数initialize(2)
  • 23.1.7生成非对称密钥对函数genKeyPair和generateKeyPair
  • 23.2Signature类函数介绍
  • 23.2.1构造方法
  • 23.2.2获得签名对象算法函数getAlgorithm
  • 23.2.3生成实例对象函数getInstance(1)
  • 23.2.4生成实例对象函数getInstance(2)
  • 23.2.5初始化验证对象函数initVerify(1)
  • 23.2.6初始化验证对象函数initVerify(2)
  • 23.2.7初始化签名对象函数initSign(1)
  • 23.2.8初始化签名对象函数initSign(2)
  • 23.2.9更新签名或验证数据函数update(1)
  • 23.2.10更新签名或验证数据函数update(2)
  • 23.2.11更新签名或验证数据函数update(3)
  • 23.2.12签名函数sign(1)
  • 23.2.13签名函数sign(2)
  • 23.2.14验证签名函数verify(1)
  • 23.2.15验证签名函数verify(2)
  • 23.3实例应用
  • 23.3.1数字签名实现
  • 23.3.2数字签名验证实现
  • 23.3.3实例实现
  • 第24章keytool和证书类
  • 24.1keytool命令介绍
  • 24.1.1产生密钥对命令genkey
  • 24.1.2向密钥仓库导入证书命令import
  • 24.1.3导出证书请求命令certreq
  • 24.1.4导出证书命令export
  • 24.1.5枚举仓库数据命令list
  • 24.1.6管理密钥仓库命令storepasswd
  • 24.1.7管理密钥仓库命令keypasswd
  • 24.1.8管理密钥仓库命令delete
  • 24.2X509Certificate类函数介绍
  • 24.2.1构造方法
  • 24.2.2检查证书有效期函数checkValidity(1)
  • 24.2.3检查证书有效期函数checkValidity(2)
  • 24.2.4获得证书版本函数getVersion
  • 24.2.5获得证书序列号函数getSerialNumber
  • 24.2.6获得证书颁发者函数getIssuerX500Principal
  • 24.2.7获得证书主题信息函数getSubjectX500Principal
  • 24.2.8获得证书有效起始日期函数getNotBefore
  • 24.2.9获得证书有效期终止日期函数getNotAfter
  • 24.2.10获得DER编码的证书内容函数getTBSCertificate
  • 24.2.11获得证书签名值函数getSignature
  • 24.2.12获得证书签名算法名称函数getSigAlgName
  • 24.2.13获得证书密钥用途函数getKeyUsage
  • 24.3X509CRL类函数介绍
  • 24.3.1构造方法
  • 24.3.2getEncoded
  • 24.3.3验证CRL签名函数verify
  • 24.3.4获得CRL版本函数getVersion
  • 24.3.5获得CRL颁发者函数getIssuerX500Principal
  • 24.3.6获得CRL本次更新时间函数getThisUpdate
  • 24.3.7获得CRL下次更新时间函数getNextUpdate
  • 24.3.8获得被吊销的证书函数getRevokedCertificate(1)
  • 24.3.9获得被吊销的证书函数getRevokedCertificate(2)
  • 24.3.10获得被吊销的证书函数getRevokedCertificate(3)
  • 24.3.11获得DER编码的CRL信息函数getTBSCertList
  • 24.3.12获得签名值函数getSignature
  • 24.3.13获得签名算法名称函数getSigAlgName
  • 24.4实例应用
  • 24.4.1流程分析
  • 24.4.2实例实现
  • 第25章Java开发实例—文件保险箱
  • 25.1功能预览
  • 25.2流程分析
  • 25.3功能实现
  • 第26章Java开发实例——安全报文系统
  • 26.1功能预览
  • 26.1.1安全报文发送
  • 26.1.2安全报文接收
  • 26.2流程分析
  • 26.2.1发送方流程分析
  • 26.2.2接收方流程分析
  • 26.3功能实现
  • 26.3.1密钥和证书keystore的生成方法
  • 26.3.2安全报文发送方
  • 26.3.3安全报文接收方
  • 第5篇PKI电子商务网站应用
  • 第27章ASP/ASP.Net电子商务网站应用
  • 27.1配置IIS的SSL服务器证书
  • 27.1.1生成证书请求
  • 27.1.2安装证书
  • 27.1.3启用SSL
  • 27.2基于数字证书的用户身份认证
  • 27.2.1基于数字证书的用户身份认证的方法
  • 27.2.2ASP/ASP.NET页面获取客户端证书的方法
  • 27.3数据签名处理—基于 CAPICOM的应用
  • 27.3.1CAPICOM简介
  • 27.3.2CAPICOM对象——Certificate对象
  • 27.3.3CAPICOM对象——Certificates对象
  • 27.3.4CAPICOM对象——CertificateStatus对象
  • 27.3.5CAPICOM对象——Store对象
  • 27.3.6CAPICOM对象——SignedData对象
  • 27.3.7CAPICOM对象——Signer对象
  • 27.3.8CAPICOM对象——Signers对象
  • 27.3.9CAPICOM对象——EnvelopedData对象
  • 27.3.10CAPICOM对象——Recipients对象
  • 27.3.11CAPICOM对象——Algorithm对象
  • 27.3.12CAPICOM对象——其他对象
  • 27.3.13如何在客户端安装部署和调用
  • 27.3.14如何在服务器端安装部署和调用
  • 27.4基于自开发控件应用
  • 27.4.1开发ActiveX控件
  • 27.4.2如何在客户端部署和调用
  • 27.4.3代码示例
  • 27.5开发实例——安全登录
  • 27.5.1登录处理页面(login.apsx.cs)
  • 27.5.2用户页面(main.apsx.cs)
  • 27.5.3出错显示页面(err.apsx.cs)
  • 27.5.4测试功能
  • 27.6开发实例——订单签名
  • 27.6.1签名页面前台(Sign.aspx)
  • 27.6.2签名页面后台(Sign.aspx.cs)
  • 27.6.3签证签名页面前台(verifySign.aspx)
  • 27.6.4验证签名后台页面(verifySign.aspx.cs)
  • 27.7小结
  • 第28章JSP电子商务网站应用
  • 28.1配置JSP Web服务器的SSL证书
  • 28.1.1生成证书请求文件(CSR)
  • 28.1.2导入证书
  • 28.1.3设置Tomcat支持SSL
  • 28.1.4使用浏览器访问SSL服务器
  • 28.2基于数字证书的用户身份认证
  • 28.2.1基于数字证书的用户身份认证的方法
  • 28.2.2JSP页面获取客户端证书的方法
  • 28.3数据签名处理
  • 28.3.1JSP前台提交签名
  • 28.3.2JSP后台处理签名
  • 28.4开发实例——安全登录
  • 28.4.1SSL登录处理页面(login.jsp)
  • 28.4.2用户主页面(main.jsp)
  • 28.4.3出错处理页面(err.jsp)
  • 28.4.4测试代码
  • 28.5开发实例——订单签名
  • 28.5.1签名页面(Sign.jsp)
  • 28.5.2验证签名页面(verifySign.jsp)
  • 第29章PHP电子商务网站应用
  • 29.1配置Apache的SSL证书
  • 29.1.1安装Apache PHP SSL
  • 29.1.2配置Apache的SSL证书
  • 29.2基于数字证书的用户身份认证
  • 29.2.1基于数字证书的用户身份认证的方法
  • 29.2.2PHP页面获取客户端证书的方法
  • 29.3数据签名处理
  • 29.3.1PHP前台提交签名
  • 29.3.2PHP后台处理签名
  • 29.4开发实例——安全登录
  • 29.4.1登录页面(login.php)
  • 29.4.2用户主页面(main.php)
  • 29.4.3出错处理页面(err.php)
  • 29.4.4测试代码
  • 29.5开发实例——订单签名
  • 29.5.1签名页面(Sign.php)
  • 29.5.2验证签名页面(verifySign.php)
  • 29.5.3测试代码
  • 第6篇其他PKI技术应用
  • 第30章颁发和获取数字证书
  • 30.1利用OpenSSL颁发数字证书
  • 30.1.1准备工作
  • 30.1.2建立根证书
  • 30.1.3颁发用户证书
  • 30.2利用Windows证书服务颁发 数字证书
  • 30.2.1准备工作
  • 30.2.2安装证书服务并设置CA
  • 30.2.3提交证书请求
  • 30.2.4证书颁发机构处理请求
  • 30.2.5下载证书
  • 30.3通过CA机构获取数字证书
  • 第31章安全电子邮件应用指南
  • 31.1Foxmail安全电子邮件应用
  • 31.1.1为Foxmail邮箱账户配置证书
  • 31.1.2发送和阅读安全电子邮件
  • 31.2Outlook安全电子邮件应用
  • 31.2.1为Outlook邮箱账户配置证书
  • 31.2.2发送和阅读安全电子邮件
  • 第32章代码签名应用指南
  • 32.1什么是代码签名
  • 32.2Windows应用程序代码签名
  • 32.2.1申请代码签名证书
  • 32.2.2使用SignCode.exe对代码签名
  • 32.2.3查看代码签名证书
  • 32.3Java代码签名
  • 32.3.1下载签名工具
  • 32.3.2申请签名证书
  • 32.3.3执行代码签名
  • 32.3.4验证Java代码签名
  • 32.4移动代码签名
  • 32.4.1主流移动操作系统对代码签名的要求
  • 32.4.2代码签名的操作方法

资源下载

资源下载地址1:https://box.lenovo.com/l/s1LjIJ

相关资源

网友留言