郵箱如何秘密發送多個人郵件
Cryptography is the science of using codes and ciphers to protect messages, at its most basic level. Encryption is encoding messages with the intent of only allowing the intended recipient to understand the meaning of the message. It is a two way function (you need to be able to undo whatever scrambling you’ve done to the message). This is designed to protect data in transit.
密碼術是在最基本的級別上使用代碼和密碼保護消息的科學。 加密是在對消息進行編碼時,僅允許目標收件人理解消息的含義。 這是一種雙向功能(您需要能夠撤消對消息所做的任何加擾操作)。 旨在保護傳輸中的數據。
One of the earliest ciphers involved a simple shift. For example, if you just shift all the letters in the alphabet by a few, the alphabet might look like the following:
最早的密碼之一就是簡單的轉換。 例如,如果僅將字母表中的所有字母移位幾個,則該字母表可能如下所示:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ
NOPQRSTUVWXYZABCDEFGHIJKLM
NOPQRSTUVWXYZABCDEFGHIJKLM
Then, each letter of the alphabet corresponds to a different letter, but it is difficult to figure out which one, if you don’t already know. Using this cipher, the message, ‘Hello’ translates to ‘Uryyb’.
然后,字母表中的每個字母對應一個不同的字母,但是如果您不知道哪個字母,則很難弄清楚哪個字母。 使用此密碼,消息“ Hello”將轉換為“ Uryyb”。
Unfortunately, advances in analysis, particularly pattern analysis driven by very powerful computers, made these types of cyphers very easy to break.
不幸的是,分析的進步,特別是由功能強大的計算機驅動的模式分析,使得這些類型的密碼非常容易破解。
In response to that, we’ve developed very strong, complex algorithms. These can be broken down into two basic types of encryptions?—?symmetric algorithms and asymmetric algorithms.
為此,我們開發了非常強大的復雜算法。 它們可以分為兩種基本類型的加密-對稱算法和非對稱算法。
Symmetric algorithms are also known as ‘secret key’ algorithms, and asymmetric algorithms are known as ‘public key’ algorithms. The key difference between the two is that symmetric algorithms use the same key to encode and decode (see the first figure below), while asymmetric algorithms use different keys for encryption and decryption (see the second figure below).
對稱算法也稱為“秘密密鑰”算法,非對稱算法也稱為“公共密鑰”算法。 兩者之間的關鍵區別在于對稱算法使用相同的密鑰進行編碼和解碼(請參見下面的第一張圖),而非對稱算法使用不同的密鑰進行加密和解密(請參見下面的第二張圖)。
As you can see in the above figure, with symmetric encryption, if Bob and Midge want to communicate, Bob first encrypts his message with the secret key (the encrypted message is called ciphertext). Then he sends it to Midge. Midge then decrypts the message with the same secret key and is able to read the message. To send a message back, the process is reversed.
如上圖所示,使用對稱加密,如果Bob和Midge想要進行通信,Bob首先使用秘密密鑰對他的消息進行加密(加密的消息稱為密文)。 然后,他將其發送給Midge。 然后,Midge使用相同的密鑰解密該消息,并能夠讀取該消息。 要發回消息,該過程被逆轉。
This process is fast, scalable, and very secure. The problem with it is that it requires both parties to already have the same secret key. If they don’t, they need to pass it along insecure channels, which essentially removes the security of the encryption.
此過程快速,可擴展且非常安全。 它的問題在于,它要求雙方已經擁有相同的密鑰。 如果不這樣做,則需要將其沿著不安全的通道傳遞,這實際上消除了加密的安全性。
With Asymmetric encryption, as in the above figure, if Bob and Midge want to communicate, Bob encrypts his message with Midge’s public key and sends it to her. She then decrypts the message with her private key to read it. To send a message back, the process is reversed.
如上圖所示,使用非對稱加密,如果Bob和Midge想要通信,Bob將使用Midge的公鑰加密其消息并將其發送給她。 然后,她用她的私鑰解密該消息以讀取它。 要發回消息,該過程可以逆轉。
In this way, anyone can send Midge a message, as she can make her public key available to anyone, but only she can decrypt a message (as she keeps her private key secret). It also solves the need to pass a secret key along insecure channels, because there is no need to pass a secret at all. The disadvantage is that it requires everyone who wants to communicate to have two different keys (not scalable), and it is relatively slow.
這樣,任何人都可以向Midge發送消息,因為她可以將其公共密鑰提供給任何人,但是只有她可以解密消息(因為她將私有密鑰保密)。 這也解決了沿著不安全的通道傳遞秘密密鑰的需要,因為根本不需要傳遞秘密。 缺點是它要求每個要通信的人都具有兩個不同的密鑰(不可伸縮),并且速度較慢。
In general, when talking about encryption, the most important considerations are:
通常,在談論加密時,最重要的注意事項是:
- Authentication/Nonrepudiation?—?Whether or not you can prove where messages originated (Am I sure who sent this message?). 身份驗證/不可否認性-您是否可以證明消息的來源(我確定誰發送了此消息嗎?)。
- Reuse?—?Can I continue to use this key or will it need to be regenerated for each new communication? 重用-我可以繼續使用此密鑰,還是需要為每個新通信重新生成它?
- Effectiveness?—?How fast can I transfer large amounts of data? 有效性-我可以多快地傳輸大量數據?
- Scalability?—?Is this feasible for large groups? 可伸縮性—這對于大型團體是否可行?
- Distribution?—?how do you distribute keys to the people who you’re communicating with, without divulging the secret to anyone else? 分發-您如何將密鑰分發給與您交流的人,而又不將秘密泄露給其他任何人?
That’s where significant differences start to come up between symmetric and asymmetric encryption, summarized below:
這就是對稱和非對稱加密之間開始出現顯著差異的地方,總結如下:
In order to use the best of both worlds, many modern encryption protocols will use asymmetric encryption to establish a connection and create a shared secret. Then, they will switch to symmetric encryption to benefit from the speed difference.
為了使用兩全其美,許多現代加密協議將使用非對稱加密來建立連接并創建共享機密。 然后,他們將切換到對稱加密以從速度差異中受益。
翻譯自: https://www.freecodecamp.org/news/how-to-send-secret-messages/
郵箱如何秘密發送多個人郵件