
数字签名
古月印象星空
热爱生活,热爱工作
展开
-
android工程版key
本文翻译整理自一俄罗斯同事的文档一、前言goolge为我们提供了4个标准的key,以签名测试程序:testkey -- a generic key for packages that do not otherwise specify a key.platform -- a test key for packages that are part of the core platf翻译 2011-12-17 15:39:31 · 5389 阅读 · 0 评论 -
MessageDigest简介
本文博客原文参考文章:http://blog.sina.com.cn/s/blog_4f36423201000c1e.html一、概述java.security.MessageDigest类用于为应用程序提供信息摘要算法的功能,如 MD5 或 SHA 算法。简单点说就是用于生成散列码。信息摘要是安全的单向哈希函数,它接收任意大小的数据,输出固定长度的哈希值。关于信息翻译 2012-12-23 20:09:37 · 94898 阅读 · 7 评论 -
Android签名验证简介
本文博客原文Android原生自带了个安装器(packages\apps\PackageInstaller),通过其中的源码PackageParser.java (frameworks\base\core\java\android\content\pm)我们大概就能知道其签名验证机制的验证过程。其中主要涉及2个函数:函数1public boolean colle原创 2012-11-30 21:37:42 · 10701 阅读 · 1 评论 -
Android应用程序签名简介
Android的应用程序APK的签名其实和一般的jar 文件签名差不多。首先,得到keystore文件.你可以从一些机构申请得到一个keystore;也可以自己生成一个自签的keystore文件。APK和jar签名所用的keystore文件是一致的。因此关于生成自签keystore文件,请参照《Jar文件的数字签名》另外android本身自带一个keystore文件debug.ke原创 2011-12-14 11:37:14 · 1443 阅读 · 0 评论 -
JAVA策略文件简介(下)
七、策略文件中的属性扩展策略文件和安全属性文件中可以进行属性扩展。 属性扩展类似于扩展 shell 中的变量。也就是说,当类似${some.property}的字符串出现在策略文件或安全属性文件中时,它将被扩展为JAVA系统属性的值。 例如:permission java.io.FilePermission "${user.home}", "read";将把 "${user.h转载 2011-12-14 11:33:57 · 2393 阅读 · 1 评论 -
JAVA策略文件简介(上)
原文地址:http://download.oracle.com/javase/1.5.0/docs/guide/security/PolicyFiles.html编译转载自:http://hi.baidu.com/sqxxr/blog/item/51e00dcb084c91eb52664f83.html一、前言JVM可以通过java.security.Policy的实例化对象根据代码的转载 2011-12-14 11:32:40 · 3583 阅读 · 0 评论 -
JAVA策略文件简介(中)
五、策略文件语法 策略配置文件用于对特定的代码指定一定的权限。为了使 applet(或在安全管理器下运行的应用程序)能够执行受保护的动作(例如读写文件),必须向 applet(或应用程序)授予进行该动作的权限。在缺省 Policy 实现中,必须由策略配置文件中的 grant 项授予该权限。唯一的例外是:代码对位于与它自身同一 (URL) 位置并且对那一位置子目录下的文件总是自动拥有读权限转载 2011-12-14 11:33:23 · 1992 阅读 · 0 评论 -
数字证书简介
文章参照自:http://www.blogjava.net/Martin-Liu-Hai-Shi/articles/232849.html一、前言证书(Certificate,也称public-key certificate)是用某种签名算法对某些内容(比如公钥)进行数字签名后得到的、可以用来当成信任关系中介的数字凭证。证书发行机构通过发行证书告知证书使用者其公钥(public-key)以原创 2011-12-14 11:23:55 · 1495 阅读 · 0 评论 -
在加密和签名中使用数字证书(下)
Message.java文件package com.robin.Signature;public class Message {protected byte[] body;private byte[] signature;Message(byte data[]) {body = data;}byte[] getBody() {return body;}原创 2011-12-14 11:14:13 · 1064 阅读 · 0 评论 -
通过JAVA来读取数字证书
CARead_Demo.java文件import java.awt.BorderLayout;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.JFrame;public class CARead_Demo {转载 2011-12-14 11:08:32 · 12037 阅读 · 2 评论 -
在加密和签名中使用数字证书(上)
如果你对数字签名还不熟悉,请先阅读《数字签名简介》,《Java的数字签名和数字证书》本示例程序使用的keystore文件robin.keystore和数字证书文件robin.crt都是《数字证书》中相应的命令生成的。如果你对如何生成keystore文件或数字证书文件请先阅读该文。SignatureDemo文件package com.robin.Signature;imp原创 2011-12-14 11:12:31 · 1729 阅读 · 0 评论 -
用DSA算法实现数字签名
下面是一个在JAVA语言中,使用DSA签名算法来进行进行数字签名的一个示例。DSA(Digital Signature Algorithm)是Schnorr和ElGamal签名算法的变种,被美国NIST作为数字签名标准(DigitalSignature Standard)。参照JDK文档中关于Signature类的叙述:NIST标准的DSA算法应该本身就包含了散列算法SHA-1和加密算原创 2011-12-13 13:19:26 · 14077 阅读 · 1 评论 -
用RSA实现数字签名
下面是一个在JAVA语言中,使用安全散列算法SAH来进行消息散列,和使用RSA对散列码加密,以实现数字签名的一个示例。如果你对数字签名还不熟悉,请先阅读《数字签名简介》及《Java的数字签名和数字证书》RSA_Demo.java文件import java.security.InvalidKeyException;import java.security.KeyPair;im原创 2011-12-13 13:17:35 · 4087 阅读 · 2 评论 -
数字签名简介
数字签名主要有以下几个步骤:第一、发方首先有一个公钥/私钥对,它将要签名的报文作为一个单向散列函数的输入,产生一个定长的散列码,一般称为消息摘要。第二、使用发放的私钥对散列码进行加密生成签名。将报文和签名一同发出去。第三、收方用和发放一样的散列函数对报文运算生成一个散列码,同时用发放的公钥对签名进行解密。第四、如果收方计算得到的散列码和解密的签名一致,那么说明的确是发方对报文进行了原创 2011-12-13 11:49:21 · 1712 阅读 · 0 评论 -
Jar文件的数字签名
JAR文件可以用 jarsigner工具或者直接通过 java.securityAPI 签名。签名后的JAR 本身的文件文件与原来JAR本身的 文件完全相同,只是更新了它的 manifest文件,并在 META-INF 目录中增加了两个文件,一个签名文件和一个签名块文件。如果你对数字签名还不熟悉,请先阅读《数字签名简介》,《Java的数字签名和数字证书》JAR文件可以用一个存储在 Keys原创 2011-12-13 13:20:28 · 4629 阅读 · 0 评论 -
Java的数字签名和数字证书
本文部分整理编译自:深入java虚拟机第二版注:关于数字证书部分,主要是我的一些推理。本人并没找到关于数字证书更详细的资料。一、基本模型 对于一个给定程序,如果我们能找到其作者,那么程序的作者就不敢编写夹带一些恶意的代码在里面。因为如果他编写夹带了恶意代码在里面,用户因此而造成任何损失的话,用户可以找到他,并可以起诉他。程序的作者必须对自己的程序负责。 通过使用数字签名和数字原创 2011-12-13 11:46:10 · 3570 阅读 · 2 评论 -
一点关于MD5计算的封装
本文参考:http://snowolf.iteye.com/blog/379860MD5 是message-digest algorithm 5 (信息-摘要算法)缩写,广泛用于加密和解密技术,常用于文件校验。校验?MD5是用于对信息生成信息摘要(即散列码)的算法之一。不管文件多大,经过MD5后都能生成唯一的MD5值。好比现在的ISO校验,都是MD5校验。怎么用?当然是把ISO经过MD5后产生原创 2012-12-23 20:14:52 · 2388 阅读 · 0 评论