Main » 2011 » Март » 16 » Electronic digital signature for dummies what it is and how not to choke Part 1
11:21
Electronic digital signature for dummies what it is and how not to choke Part 1
So, more often in circles, working with documents increasingly are the words "electronic document" and the associated almost inextricably "digital signature", otherwise - EDS.

This series of articles designed to reveal the "secret knowledge" about what it is, when and how it can and should use, what are the pros and cons.

Of course, the articles are not written for experts in cryptography, and for those who have this same cryptography will be used, or just beginning to study it, wanting to become an expert, so I tried to simplify the understanding of the process, citing the analogy and considering the examples .


Why do we do something to sign? Naturally, to make sure that we are acquainted with the contents, according to (and sometimes vice versa, disagree) with it. A digital signature also protects our content spoofing.

So, to begin, naturally, is with the fact that a digital signature.
In the most basic case, this is - the result of a hash function. What is it better than me explain wikipedia, in our case, the important thing is that with high probability, the result is not repeated for different input data, as well as the result of this function is not enough that is shorter than the original data, so more background information on it can not be restored . The result is called the hash function, and use this function to the data called hashing. Roughly speaking, be called a hash function archiving, as a result we get very little sequence of bytes, but to restore the original data from such an "archive" is impossible.

So, we read, I've found in the memory heshiruem read. And what we have EDS? Almost. Our result is a stretch can be called a signature, but, nevertheless, full signature, he is not, because:

1. We do not know who made this signature

2. We do not know when it was done by signature

3. Signature itself is not protected against dilution in any way.

4. Well, yes, a lot of hash functions, which are used to create this particular hash?

Therefore, to apply to hash the word "signature" still not good, we call it more simply hash.

You send your file to another person, for example, by mail, being sure that he just received and read exactly what you sent. He, in turn, must also hash your data and compare their results with yours. If they match - all is well. This means that data is protected? None.
Because hash can anyone, anytime, and you can never prove that he is hashed is not what you sent. That is, if the data will be intercepted by an attacker on the road, or the person you are sending the data - not a very good person, then the data can be easily tampered with and proheshirovany. And your recipient (well, or you, if the recipient - the very bad man) would never know that he has received is not what you sent, or he replaced the information from you for future use in their bad purposes.
Therefore, the place for the use of pure hash function - transport of data within the program or programs if they are able to communicate among themselves. Actually, using a hash function computed checksums. These mechanisms protect against Random substitution of data, but do not protect against Special.

But, let's go further. We want to protect our hash result of substitution to each counter could not assert that it had the right result. To this end, the most obvious that (in addition to administrative measures)? That's right, encrypt. But with the help of encryption can also verify identity and who hashed data! And to make it relatively easy, because there is asymmetric encryption. Yes, it's slow and heavy, but because we all somehow and need - to encrypt a small sequence of bytes. Advantages of such actions are obvious - in order to test our signature, will need to have our public key by which the identity of the encrypted (and therefore creates a hash) can be easily installed.
The essence of the encryption as follows: you have a private key that you keep for yourself. And there is a public key. Public key, you can all show and give away, and closed - no. Encryption is using the private key and decryption - using the public.
Giving an analogy, you have a good lock and two keys to it. One key opens the lock (open), the second - close (closed). You take a box, put into it any thing and close it for its castle. So how do you want your closed lock box opened its recipient, then you open that opens the lock, key safely give him. But you do not want your lock someone closed the box again, it's your own castle, and everyone knows that it is yours. Therefore, closing the key you always keep with me, that someone did not put in your box of nasty muck and said afterwards that it you she was laid and shut down its castle.

And everything is good, but then immediately there is a problem, but, in fact, not even one.

1. We must somehow convey our public key, thus it needs to understand the host country.

2. Need to somehow tie this public key to us that it was impossible to assign.

3. Moreover, the key need to contact us, we must also understand what an encrypted hash of what the key to decipher. And if the hash is not one, but they, say, a hundred? Keep a separate registry - a very difficult task.

All this leads us to the fact that the private key, and our hash to be stored in some formats that must be standardized, to circulate as widely as possible, and even then use it to the sender and the recipient did not arise "translation difficulties .

As is usual for people to something common to come and could not, and formed two great camps - the format of OpenPGP format and S / MIME + X.509. But this was already in the next article.

Part 2
Views: 422 | Added by: w1zard | Rating: 0.0/0
Total comments: 0
Имя *:
Email *:
Код *: