郵箱如何秘密發送多個人郵件_如何發送秘密消息

郵箱如何秘密發送多個人郵件

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/

郵箱如何秘密發送多個人郵件

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/391512.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/391512.shtml
英文地址,請注明出處:http://en.pswp.cn/news/391512.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

leetcode 面試題 17.21. 直方圖的水量(單調棧)

給定一個直方圖(也稱柱狀圖),假設有人從上面源源不斷地倒水,最后直方圖能存多少水量?直方圖的寬度為 1。 上面是由數組 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的直方圖,在這種情況下,可以接 6 個單位的水(藍色部分表示水&a…

python:動態參數*args

動態參數 顧名思義,動態參數就是傳入的參數的個數是動態的,可以是1個、2個到任意個,還可以是0個。在不需要的時候,你完全可以忽略動態函數,不用給它傳遞任何值。 Python的動態參數有兩種,分別是*args和**kw…

3.5. Ticket

過程 3.4. Ticket 使用方法 New Ticket 新建Ticket, Ticket 可以理解為任務。 將Ticket 分配給團隊成員 受到Ticket后,一定要更改Ticket 為 accept , 這時在View Tickets 中將會看到該Ticket已經分配, 編碼過程 這里有一個特別的規定&…

Python操作Mysql實例代碼教程在線版(查詢手冊)_python

實例1、取得MYSQL的版本在windows環境下安裝mysql模塊用于python開發MySQL-python Windows下EXE安裝文件下載 復制代碼 代碼如下:# -*- coding: UTF-8 -*- #安裝MYSQL DB for pythonimport MySQLdb as mdb con None try: #連接mysql的方法:connect(ip,user,pass…

批判性思維_為什么批判性思維技能對數據科學家至關重要

批判性思維As Alexander Pope said, to err is human. By that metric, who is more human than us data scientists? We devise wrong hypotheses constantly and then spend time working on them just to find out how wrong we were.正如亞歷山大波普(Alexander Pope)所說…

leetcode 1143. 最長公共子序列(dp)

給定兩個字符串 text1 和 text2,返回這兩個字符串的最長 公共子序列 的長度。如果不存在 公共子序列 ,返回 0 。 一個字符串的 子序列 是指這樣一個新的字符串:它是由原字符串在不改變字符的相對順序的情況下刪除某些字符(也可以…

【Spark】SparkStreaming-Kafka-Redis-集成-基礎參考資料

SparkStreaming-Kafka-Redis-集成-基礎參考資料 Overview - Spark 2.2.0 DocumentationSpark Streaming Kafka Integration Guide - Spark 2.2.0 DocumentationSpark Streaming Kafka Integration Guide (Kafka broker version 0.8.2.1 or higher) - Spark 2.2.0 Documentat…

Manjaro 17 搭建 redis 4.0.1 集群服務

安裝Redis在Linux環境中 這里我們用的是manjaro一個小眾一些的發行版 我選用的是manjaro 17 KDE 如果你已經安裝好了manjaro 那么你需要準備一個redis.tar.gz包 這里我選用的是截至目前最新的redis 4.0.1版本 我們可以在官網進行下載 https://redis.io/download選擇Stable &…

了解如何使用Flutter構建iOS和Android應用

Learn Flutter in this full course from Nick Manning (of fluttercrashcourse.com). Flutter is Google’s multi-platform mobile development framework used to create apps for Android and iOS using the Dart programming language. 可以從fluttercrashcourse.com的Nic…

leetcode 781. 森林中的兔子(hashmap)

森林中,每個兔子都有顏色。其中一些兔子(可能是全部)告訴你還有多少其他的兔子和自己有相同的顏色。我們將這些回答放在 answers 數組里。 返回森林中兔子的最少數量。 示例: 輸入: answers [1, 1, 2] 輸出: 5 解釋: 兩只回答了 “1” 的兔…

快速排序簡便記_建立和測試股票交易策略的快速簡便方法

快速排序簡便記Note from Towards Data Science’s editors: While we allow independent authors to publish articles in accordance with our rules and guidelines, we do not endorse each author’s contribution. You should not rely on an author’s works without se…

Java學習第1天:序言,基礎及配置tomcat

所謂是福不是禍,是禍躲不過,到底還是回到java的陣地上來。既然它這么熱,那就學學它,現在這件事已經提上議事日程,也已經開始。 今天做的事: 泛泛的翻了幾本書,敲了一些練習代碼,比如…

robot:List變量的使用注意點

創建list類型變量,兩種方式,建議使用Create List關鍵字 使用該列表變量時需要變為${}方式,切記切記! 轉載于:https://www.cnblogs.com/gcgc/p/11429482.html

python基礎教程(十一)

迭代器 本節進行迭代器的討論。只討論一個特殊方法---- __iter__ ,這個方法是迭代器規則的基礎。 迭代器規則 迭代的意思是重復做一些事很多次---就像在循環中做的那樣。__iter__ 方法返回一個迭代器,所謂迭代器就是具有next方法的對象,在調…

編程需要數學知識嗎_編程需要了解數學嗎?

編程需要數學知識嗎Does programming require knowing math? Not necessarily. 編程需要了解數學嗎? 不必要。 When I say that, Im mostly talking about Web Development, not working with graphics or specific applications that require advanced math. 當我…

美劇迷失_迷失(機器)翻譯

美劇迷失Machine translation doesn’t generate as much excitement as other emerging areas in NLP these days, in part because consumer-facing services like Google Translate have been around since April 2006.如今,機器翻譯并沒有像其他NLP新興領域那樣…

mysql 1449 : The user specified as a definer ('usertest'@'%') does not exist 解決方法 (grant 授予權限)...

從服務器上遷移數據庫到本地localhost 執行 函數 時報錯, mysql 1449 : The user specified as a definer (usertest%) does not exist 經查,是權限問題(其中usertest是服務器上數據庫的登錄名),解決辦法: 授權給 u…

初識數據結構與算法

1、什么是數據結構? a、數據結構是一門研究非數值計算的程序設計問題中的操作對象,以及它們之間的關系和操作等相關問題的學科。 b、數據結構是計算機存儲、組織數據的方式,數據結構是指相互之間存在一種或多種特定關系的數據元素的集合。通常…

產品經理思考

1.分析QQ與微信的區別,包含其中存在的問題,并給出解決方案。 2.如果你設計一款基于音樂的高品質內容的社交軟件,給說出這么設計的原因。 3.請說出一款APP的的看法,指出其中不合理的地方,并說明原因(APP如果…

shopify 開發_播客第57集:從Shopify的作家到開發人員,與Adam Hollett一起

shopify 開發On this weeks episode of the freeCodeCamp podcast, Quincy interviews Adam Hollett. Hes a software developer at Shopify in Ottawa, Canada.在本周的freeCodeCamp播客節目中,Quincy采訪了Adam Hollett。 他是加拿大渥太華Shopify的軟件開發人員。…