2017-08-10 43 views
1

可以說我有一個github訪問令牌,看起來像這樣a94a8fe5ccb19ba61c4c0873d391e987982fbbd3。此代幣需要放置在某些代碼中,以便在次要帳戶需要時創建問題。我不想讓人們知道我的訪問令牌,因爲,那麼這將是一個可怕的想法..什麼是掩蓋/隱藏我的訪問令牌放入代碼中的最佳方式,以及如何反轉掩碼/隱藏功能而不是顯而易見呢?掩蔽/隱藏github訪問令牌

回答

2

你可以使用Base64編碼進行編碼:

>>> import base64 
>>> access_token = "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3" 
>>> encoded_access_token = base64.b64encode(access_token) 
>>> encoded_access_token 
'YTk0YThmZTVjY2IxOWJhNjFjNGMwODczZDM5MWU5ODc5ODJmYmJkMw==' 

這不一定是安全的,但我們可以把它固定。我們可以繼續編碼access_tokenn次,並在結果字符串中隱藏編號n。我選擇了結束。例如,設定n = 5

def encodeToken(access_token, n): 
    for i in range(n + 1): 
     access_token = base64.b64encode(access_token) 
    return access_token + str(n) 

def decodeToken(encoded_token): 
    n = encoded_token[-1] 
    encoded_token = encoded_token[:-1] 
    for i in range(int(n) + 1): 
     encoded_token = base64.b64decode(encoded_token) 
    return encoded_token 

>>> access_token = "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3" 
>>> encoded_access_token = encodeToken(access_token, 5) 
>>> encoded_access_token 
"Vm1wR1lWVXlUbkpOVldScFVteGFiMVZ1Y0VkaFJscHlWMjFHYWxadFVsWlZNblIzWWtaS1ZXSkdiRlpOYWtaMlZrUktSMk5zWkhWU2JGWm9UV3hLVUZkclVrSk9Wa3BYWVROd2FsSXdXbFJWYkZKQ1pVWmFSMWR0ZEZkaGVsWlhWREZXVjFkdFZuTlhiRVpXWVRGYU0xcEZXbXRYUlRGV1pFZG9UbEpGVmpaV1ZWcFNaREZDVWxCVU1EMD0=5" 
>>> decoded_access_token = decodeToken(encoded_access_token) 
>>> decoded_access_token 
"a94a8fe5ccb19ba61c4c0873d391e987982fbbd3" 

要做的最安全的事情是定義自己的方法來編碼訪問令牌。

+0

雖然這很不安全,但.. – mawi

+1

那麼,你可以使用base64編碼使其安全。讓我舉一個例子。 –

+1

這會工作!謝謝! – mawi