有這樣一個經曆,伺服器挂掉了,請工程師維護,為了安全,工程師進行核心操作時,直接關掉顯示器進行操作,完成後,再打開顯示器,進行收尾工作...
密碼
這個經曆告訴我們:
- 為了安全,核心的操作是不可見的
- 在某些情況下,顯示器可以忽略...
在Linux系統中,在終端輸入密碼時,是不顯示密碼位數的(不回顯)
早些年,計算機的數量很少,會出現一個人操作計算機,背後一群人圍觀,被人看到輸入密碼的位數,就會導緻安全問題,于是,采用不回顯密碼的方式解決問題(密碼不回顯,你的手指做幾個假動作,别人就很難看到你的密碼)
這裡我們用一個簡單的python庫模拟這個操作
動圖_無回顯登入
為友善學習,注釋放在源碼中:
源碼
# getpass是一個非常簡單的Python标準庫
# 主要包含兩個函數:
# 函數1:getuser //從系統變量中自動擷取使用者名
# 函數2:getpass // 類似于input, 但不會将我們輸入的字元顯示在指令行中(不回顯)
from __future__ import print_function
import getpass
# 自動讀取目前使用者的名稱
user = getpass.getuser()
print("尊敬的",user)
# 以不回顯的方式,讀取使用者的輸入
passwd = getpass.getpass("請輸入您的密碼:")
print("------------->華麗的分割線<----------------")
print("您的密碼為:", passwd)