工具用的順手嗎?
你的回饋能幫助我們做得更好
生成字串的Adler32校驗和,支援文字、Hex、Base64輸入,用於資料完整性驗證。
輸入內容開始計算
概覽
了解工具能解決的問題、計算或處理邏輯,以及資料邊界。
本頁把輸入的文字轉成一個大寫十六進位校驗值,輸入有變動時會立即更新。校驗值是方便比對的短結果,可用來察覺許多非預期的內容差異;它不是加密,也不是用來證明作者身分的簽章。此頁的適用範圍是短 ASCII 文字的快速對照,不是檔案或任意二進位資料校驗。
理解結果時要先分清「字元」和「位元組」。RFC 1950 定義的 Adler-32 逐一處理資料位元組;本頁則逐一取輸入字串中每個 UTF-16 字元單位的數值進行計算。英文字母、數字等 ASCII 字元的數值和其單一位元組相同,因此短 ASCII 文字可以與標準位元組算法對照。中文、表情符號及其他非 ASCII 字元,則不能假設結果會和先轉成 UTF-8 位元組後計算的工具相同。
標準 Adler-32 維護 A、B 兩個累加和。A 起始為 1,B 起始為 0;每讀入一個位元組,先把它加到 A,再把更新後的 A 加到 B。每次累加都以 65521 取餘數,最後將 B 放在高 16 位、A 放在低 16 位。
A₀ = 1,B₀ = 0
Aᵢ = (Aᵢ₋₁ + xᵢ) mod 65521
Bᵢ = (Bᵢ₋₁ + Aᵢ) mod 65521
Adler-32 = B × 65536 + A
因此字元順序、空格、大小寫和換行都會影響結果。RFC 1950 說明的是標準位元組算法;本頁對非 ASCII 字元的處理方式與該標準的輸入單位不同。RFC 1950(IETF,1996 年 5 月發布;2026-09-30 核對)支持上述初值、模數、位元組定義與結果組合方式:閱讀 RFC 1950 規格。
指南
依步驟完成操作,並透過範例核對輸入與結果。
在「輸入內容」欄貼上或輸入短文字。請保留原有大小寫、標點、空格與換行;即使只多一個空格,計算結果也可能不同。
非空輸入會在結果區顯示大寫 Hex 值,可使用旁邊的複製控制項複製。修改輸入後結果會跟著更新;清空欄位則回到提示狀態。
若要和程式輸出比較,先確認資料是相同的 ASCII 字元、換行也一致,並確認對方使用 Adler-32。若規格要求對檔案原始位元組或 UTF-8 位元組計算,請改用能接收相同位元組序列的實作。
例如輸入 hello,本頁結果為 062C0215。這組 ASCII 字元的字元碼與單位元組數值一致,因此可以按 RFC 1950 的標準公式得到相同結果。複製結果時保留完整的八位十六進位表示及大小寫即可。
情境
查看這項工具在不同工作與生活流程中的用法。
需要人工傳遞一段 ASCII 設定文字時,傳送方和接收方可分別輸入相同片段,比較兩邊的值。若結果不一致,就回頭檢查標點、空格、大小寫與換行;相同結果僅供快速比對,仍應以原文確認重要設定。
開發或測試人員可先記錄一段短 ASCII 測試輸入及畫面結果,交接時再重算比對。若測試程式依規格處理 UTF-8 位元組,只有在輸入確定是 ASCII 時才可直接用本頁結果對照。
問答
集中解答常見疑問與容易混淆的問題。
通常是輸入單位不同。本頁直接以文字字元單位計算;RFC 1950 定義的算法則接收位元組。若程式把中文先編碼成 UTF-8 位元組,數值序列便不同。需要逐位元組符合規格時,請使用能明確輸入相同位元組的工具或程式。
不能。此頁只有文字輸入欄,不提供檔案上傳、二進位、Hex 解碼或 Base64 解碼模式。若手上是檔案或已編碼的位元組資料,應先選用支援原始位元組輸入的實作,避免把字串形式誤當成資料本身。
不可以。它是校驗和,不是密碼學雜湊或訊息驗證碼;有人刻意修改內容時,也能重新計算校驗值。它適合有限的意外差異檢查,不能證明來源可信或內容絕對相同。
須知
使用前了解適用範圍、結果限制與必要提醒。
請將本頁結果限於短 ASCII 文字的快速比對。非 ASCII 字元的結果可能與按 UTF-8 或其他編碼取得位元組後計算的標準結果不同;本頁也沒有檔案、原始位元組、Hex 或 Base64 輸入方式。若協定、壓縮格式或測試規格要求符合 RFC 1950 的位元組計算,應採用可處理該規格位元組輸入的實作。
Adler-32 的碰撞可能發生,相同校驗值不代表兩段內容必然逐字相同,也不能驗證操作者或來源。涉及安全性、下載來源驗證或防止蓄意竄改時,請依協定要求使用密碼學雜湊、數位簽章或訊息驗證機制;不可用本頁結果取代這些措施。
推薦
查找相關工具、專題與可用的 API 能力。