DLD addLibrary: 'libnettle.so.4'. CStruct subclass: NettleHmacSha1 [ hmac_set_key: length key: key [ ] hmac_update: length data: data [ ] hmac_digest: length digest: digest [ ] set_key: key [ self hmac_set_key: (key size) key: key. ] update: data [ self hmac_update: (data size) data: data. ] digest [ | result | result := ByteArray new: 20. self hmac_digest: 20 digest: result. ^result ] ]