Download - Academy Publisher
Download - Academy Publisher
Download - Academy Publisher
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
……<br />
string strPublicKey = crypt.ToXmlString(false);<br />
// public key<br />
string strPrivateKey = crypt.ToXmlString(true);<br />
// private key<br />
(2)Code-conversing the data<br />
……<br />
byte[] bytes =<br />
Encoding.GetEncoding("GB2312").GetBytes(“plaintext”<br />
);//importing plaintext data and symmetric key<br />
( 3 ) Encrypting with Encrypt ( ) of RSA-<br />
CryptoServiceProvider<br />
……<br />
byte[] cipherBytes = crypt.Encrypt(bytes, false);<br />
When decrypting with this method, we only use<br />
Decrypt () of RSACryptoServiceProvider.<br />
C. Data Signature and the Verification<br />
.NET Framework provides signed data and documents<br />
with RSACryptoServiceProvider and DSACrypto-<br />
ServiceProvider class.<br />
That is, RSACryptoServiceProvider crypt = new<br />
RSACryptoServiceProvider() importing one’s own<br />
private key for signing.<br />
The theory of singing with crypt.FromXmlString-<br />
(strPrivateKey), as a matter of fact, is using plaintext to<br />
get hash code and then encrypting the hash code with<br />
one’s own private key. Based on the plaintext, we can use<br />
SignData () to get hash code and signed data.<br />
byte[] signBytes = crypt.SignData(bytData, offset,<br />
count, SHA1.Create());//SHA1.Create() enable us to<br />
obtain hash code of the data.<br />
The data verification is accomplished by comparing<br />
the re-generated hash with the original hash to determine<br />
whether the data have been altered or not. After<br />
importing counterpart’s public key, the verification<br />
results prove that the new scheme is up to expectation by<br />
using VerifyData(bytData, SHA1.Create(), bytSignature).<br />
Ⅳ. CONCLUSIONS<br />
This paper studied the two conventional computer<br />
security technologies, digital signature and digital<br />
envelope, based on which, a more secure scheme was<br />
constructed. It is proved that the communication data can<br />
meet the three indicators, confidentiality, integrity and<br />
undeniablility. Our next step is to put the new scheme<br />
into practical application; however, it is necessary to<br />
point out that the .Net, as the development environment,<br />
provides first-class encryption model and encryption<br />
class, making the implementation of the scheme become<br />
much easier.<br />
REFERENCES<br />
[1] [Wikipedia’s digital signature,]Wikipedia page: Digital<br />
signature, last modified on 1 September 2009,<br />
http://en.wikipedia.org/wiki/Digital_signature<br />
[2] PKCS #7 Version 1.6 Bulletin:Cryptographic message<br />
syntax, RSA Laboratories[S].<br />
[3] ZHAO Yan-bo, ZHANG Xue-jie, JIANG Yong-ling.<br />
Application researches on high strength file encryption<br />
based on digital envelope. Computer Engineering and<br />
Design[J].2007.9:4357-4359<br />
[4] Gu C. X., Zhu Y. F., Zhang Y. J. A Formal Model for the<br />
Security of Proxy Signature Schemes. Wuhan University<br />
Journal of Natural Science, 10(1), 2005: 275-278.<br />
[5] Ureche O, Plamondon R. Document transport, transfer and<br />
exchange:Security and commercial aspects<br />
[C].ICDAR.Washington,DC,USA:IEEE Computer<br />
Society,1999:585-588.<br />
[6] Okamoto T., Inomata A., Okamoto E. A Proposal of Short<br />
Proxy Signature Using Pairing. In: International<br />
Conference on Information Technology (ITCC 2005). USA:<br />
IEEE press, 2005: 631–635.<br />
[7] Huang X.Y., Mu Y., Susilo W., et al. A Short Proxy<br />
Signature Scheme: Efficient Authentication in the<br />
Ubiquitous World. In: EUCWorkshops 2005. Berlin:<br />
Springer-Verlag, 2005: 480–489.<br />
192