20130208

[解法] delphi md5 integer overflow

使用 delphi 開發程式若要引用 md5 ,

則有可能觸發 [integer overflow] 的訊息

一個簡單的小步驟可迴避此問題:

在unitMD5.pas 中的  function FF() 中

加註省略溢位檢查:

procedure FF(var a: DWORD; b, c, d, x: DWORD; s: BYTE; ac: DWORD);
begin
{$OVERFLOWCHECKS OFF, RANGECHECKS OFF}
    inc(a, F(b, c, d) + x + ac);
    rot(a, s);
    inc(a, b);
end;

 

#

0 意見:

張貼留言