Fórum Integer overflow em MD5 #351523
07/01/2008
0
Olá turma,
tenho um sistema que gera o XML do TISS.
Na hora de gerar o Hash está dando o erro ´INTEGER OVERFLOW´.
Usando o Debug descobri que o erro acontece quando passa pela função abaixo:
[b]function F(x, y, z: DWORD): DWORD;
begin
Result := (x and y) or ((not x) and z);
end;[/b]
Que é chamada por esta procedure:
[b]procedure FF(var a: DWORD; b, c, d, x: DWORD; s: BYTE; ac: DWORD);
begin
inc(a, F(b, c, d) + x + ac);
rot(a, s);
inc(a, b);
end;[/b]
- Só um detalhe:
Tenho outros Sistemas onde faço a mesma coisa que neste do erro, já imprimi as Unit´s e conferi linha por linha e não descobri o que há.
Desde já agradeço a ajuda.
Grande abraço.
tenho um sistema que gera o XML do TISS.
Na hora de gerar o Hash está dando o erro ´INTEGER OVERFLOW´.
Usando o Debug descobri que o erro acontece quando passa pela função abaixo:
[b]function F(x, y, z: DWORD): DWORD;
begin
Result := (x and y) or ((not x) and z);
end;[/b]
Que é chamada por esta procedure:
[b]procedure FF(var a: DWORD; b, c, d, x: DWORD; s: BYTE; ac: DWORD);
begin
inc(a, F(b, c, d) + x + ac);
rot(a, s);
inc(a, b);
end;[/b]
- Só um detalhe:
Tenho outros Sistemas onde faço a mesma coisa que neste do erro, já imprimi as Unit´s e conferi linha por linha e não descobri o que há.
Desde já agradeço a ajuda.
Grande abraço.
Weliton Oliveira
Curtir tópico
+ 0
Responder
Posts
08/01/2008
Sremulador
amigo, utilize esta lib para fazer o calculo
[url]http://www.fichtner.net/delphi/md5/[/url]
[url]http://www.fichtner.net/delphi/md5/[/url]
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)