當前位置:首頁 » 安卓系統 » android時間同步

android時間同步

發布時間: 2024-06-20 22:51:46

⑴ 如何用android開發otp

otp從技術來分有三種形式, 時間同步、事件同步、挑戰/應答。
(1) 時間同步
原理是基於 動態令牌和 動態口令驗證伺服器的時間比對,基於 時間同步的 令牌,一般每60秒產生一個新口令,要求伺服器能夠十分精確的保持正確的時鍾,同時對其令牌的晶振頻率有嚴格的要求,這種技術對應的終端是硬體令牌。
(2)事件同步
基於事件同步的令牌,其原理是通過某一特定的事件次序及相同的種子值作為輸入,通過HASH演算法中運算出一致的密碼。
(3)挑戰/應答
常用於的網上業務,在網站/應答上輸入 服務端下發的 挑戰碼, 動態令牌輸入該挑戰碼,通過內置的演算法上生成一個6/8位的隨機數字,口令一次有效,這種技術目前應用最為普遍,包括刮刮卡、簡訊密碼、動態令牌也有挑戰/應答形式。

主流的動態令牌技術是時間同步和挑戰/應答兩種形式。
項目採用:
https://code.google.com/p/androidtoken/ 實現TOTP動態口令登錄
android token 該項目支持HOTP (事件令牌)和TOTP (時間令牌)規范
配置令牌支持:KeyUriFormat和QR碼,以及手動創建;

項目實現:
我這里採用添加方便的qr碼,也就是常見的二維碼來實現用戶通過手機來綁定一個token;
首先,需要有的就是伺服器端和客戶端都共有的一個seed。

private final static String NUM_CHAR = "0123456789";

private static int charLen = NUM_CHAR.length();

/**

* 根據系統時間獲得指定位數的隨機數

* @param randomNumberDigit 隨機數的位數

* @return 獲得的隨機數

*/

public static String getRandomNumber(int randomNumberDigit) {

long seed = System.currentTimeMillis();// 獲得系統時間,作為生成隨機數的種子

StringBuffer sb = new StringBuffer();// 裝載生成的隨機數

Random random = new Random(seed);// 調用種子生成隨機數

for (int i = 0; i < randomNumberDigit; i++) {

sb.append(NUM_CHAR.charAt(random.nextInt(charLen)));

}

return sb.toString();

}

⑵ android系統怎麼同步網路時間

進入設置,點擊時間設置,選擇網路提供的時間。

先設置手機時間同步,打開設置中心(以紅米手機MIUI 8系統為例)。

選擇更多設置(以紅米手機MIUI 8系統為例,其它手機系統位置不同),點擊日期和時間。

選中自動確定日期和時間,自動確定時區,選擇24小時格式,設置完成。

電腦設置時間步驟:XP和WIN系統時間顯示位置相同,電腦任務欄最右側,雙擊時間(以XP系統設置為例)

打開日期和時間屬性面板,點擊Internet 時間選項。

勾選與internet時間伺服器同步,選擇任何一個伺服器都可以。

選擇time.windows.com伺服器,點擊立即更新。電腦時間同步完成。

熱點內容
mysql資料庫審計 發布:2024-07-14 03:03:29 瀏覽:618
ftp免費工具 發布:2024-07-14 02:34:24 瀏覽:246
android應用查看簽名 發布:2024-07-14 02:19:54 瀏覽:616
sql的演算法 發布:2024-07-14 02:18:07 瀏覽:382
以下是c語言的特點 發布:2024-07-14 02:07:10 瀏覽:442
世界上第一個編譯儀 發布:2024-07-14 02:06:36 瀏覽:440
java腳本實現搶qq紅包 發布:2024-07-14 02:05:13 瀏覽:978
編譯原理461 發布:2024-07-14 01:33:12 瀏覽:573
腳本運行時間長 發布:2024-07-14 01:02:09 瀏覽:793
電腦版花雨庭伺服器ip地址是什麼 發布:2024-07-14 00:42:39 瀏覽:768