Difference between revisions of "83Plus:BCALLs:8018"

From WikiTI
Jump to: navigation, search
m
(Example)
Line 24: Line 24:
  
 
== Example ==  
 
== Example ==  
  <nowiki>B_CALL InitializeMD5
+
  B_CALL [[83Plus:BCALLs:808D|MD5Init]]
ld bc,0040h
+
ld bc,14
ld hl,SomeAddress
+
ld hl,String
B_CALL CalculateMD5
+
B_CALL [[83Plus:BCALLs:8090|MD5Update]]
B_CALL FinishMD5</nowiki>
+
B_CALL MD5Final
 +
; should give: f96b 697d7cb7938d525a2f31aaf161d0
 +
 +
String: .db "message digest"

Revision as of 15:33, 30 March 2005

Synopsis

Official Name: MD5Final

Other Name: FinishMD5

BCALL Address: 8018

Finishes an MD5 hash by adding padding and length bits.

Inputs

  • 8269: (8 bytes) Holds the length in bits of the data hashed so far.
  • 8292: (16 bytes) Current MD5 hash

Outputs

  • 8292: (16 bytes) Completed MD5 hash

Destroys

  • 8259: (16 bytes) Alternate registers (roughly equivalent to the AA, BB, CC, and DD registers specified in the MD5 standard.)
  • 83A5: (64 bytes) Buffer holding data to be hashed.

Comments

This B_CALL "completes" a hash started by MD5Init and MD5Update.

Example

B_CALL MD5Init
ld bc,14
ld hl,String
B_CALL MD5Update
B_CALL MD5Final
; should give: f96b 697d7cb7938d525a2f31aaf161d0

String: .db "message digest"