教你一招,如何利用ASCII碼快速有效地提升自己的賬號安全

教你一招,如何利用ASCII碼快速有效地提升自己的賬號安全

前言

相信很多小夥伴都體會過這樣的事情,老闆站在身邊,爸媽站在身後,自己的用戶名就赤裸裸的暴露在他們的眼前。假如是朋友親人還好,如果讓壞人偷看到了自己的賬戶,安全隱患可想而知。

基於這樣的背景下,今天做了一個非常有趣的測試(其實是老師讓做的),測試一下有沒有電腦能識別但是顯示不出來的奇怪字符

然後我們將這些字符加到用戶名中,這樣即使別人看了你的賬號甚至看了你的密碼也無可奈何。


首先了解一下什麼是ASCII碼。

ASCII碼

ASCII (American Standard Code for Information Interchange):美國信息交換標準代碼,是基於拉丁字母的一套電腦編碼系統。它是最通用的信息交換標準,ASCII第一次以規範標準的類型發表是在1967年,到目前爲止共定義了128個字符,而後新增了128個字符,一共256個字符。

其中:

  • 不可打印的控制字符爲前32位(0~31)

  • 32~127位是打印字符,其中包括標點符號和英文字母的大小寫等

  • 128~255位是擴展字符,包括一些特殊的符號,它們就是今天的主角。

小提示:我們可以通過按住alt鍵+小鍵盤上的數字輸入對應的ASCII編碼。

修改登錄規則和用戶名

首先我們把windows改爲可輸入用戶名(吃飽了撐的

Win+R調出運行菜單輸入"gpedit.msc",打開本地策略組編輯器,依次選擇-Windows 設置–安全設置–本地策略–安全選項。

將交互式登錄:不顯示上次登錄改爲啓用

Win+R調出運行菜單輸入“netplwiz”,或者在搜索框內輸入“用戶賬戶”

勾選上“要使用本計算機,用戶必須輸入用戶名和密碼”選項。

做實驗

接下來讓我們測試到底有哪些字符能作爲用戶名而無法顯示在屏幕上呢?是不是有點小期待。

爲了方便本次實驗,全程在虛擬機中測試,虛擬機版本winxp,不影響在其他版本上的使用

1) 控制字符

我們先對控制字符進行測試,顯然他們都不行~

2) 可打印字符

顯然除了空格以外,其他的字符都能顯示,對於本次測試意義不大。

3) 拓展字符

表太長就不截圖了~感興趣的朋友可以自己搜一下

我們對拓展字符進行測試,將所有可打印字符依次輸入到用戶名修改界面,發現表中的字符不可見且佔有實際位置。

ASCII編碼值(十進制) 十六進制
129 81
141 8D
143 8F
144 90
157 9D
160 A0

我們對這些字符進行集合測試。一共六個字符作爲用戶名,其中ASCII編碼160和空行類似。註銷之後輸入對應的用戶名,成功登錄。

輸入錯誤順序的用戶名或者使用空行代替ASCII編碼160字符,均會導致登錄失敗。這證明在系統內部機器還是將這些字符進行獨立的存儲和識別。

結論

​ 通過對256個ASCII編碼的測試,我們發現,有一部分字符可輸入但不可顯示並且能作爲用戶名或者是密碼來使用

如果我們在自己的用戶名或者密碼中加入這些字符,其他人看來這些字符的顯示效果相同,而實際上卻對應不同的用戶名和密碼,這種方式大大提高了賬戶的安全性。

當然,也增大了賬號輸入的複雜性(狗頭保命)


原創首發,歡迎來我的博客留言討論,我的博客主頁:LeonG是什麼意思?

版權聲明:本文爲博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章