2018-04-06 14:52:10 +00:00
|
|
|
# Nimbus
|
|
|
|
# Copyright (c) 2018 Status Research & Development GmbH
|
|
|
|
# Licensed under either of
|
|
|
|
# * Apache License, version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
|
|
|
|
# * MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
|
|
|
|
# at your option. This file may not be copied, modified, or distributed except according to those terms.
|
|
|
|
|
2018-01-29 17:40:22 +00:00
|
|
|
import
|
2018-05-30 16:11:15 +00:00
|
|
|
nimcrypto, strutils, eth_common
|
2018-01-29 17:40:22 +00:00
|
|
|
|
2018-05-30 16:11:15 +00:00
|
|
|
proc keccak*(value: openarray[byte]): Hash256 {.inline.} =
|
|
|
|
keccak256.digest value
|
2018-01-29 17:40:22 +00:00
|
|
|
|
2018-05-30 16:11:15 +00:00
|
|
|
proc keccak*(value: string): Hash256 {.inline.} =
|
|
|
|
keccak256.digest value
|
|
|
|
|
|
|
|
proc keccak*(value: cstring): Hash256 {.inline.} =
|
2018-04-11 14:32:19 +00:00
|
|
|
# TODO: this is inefficient it allocates for the cstring -> string and then for string -> result
|
|
|
|
keccak $value
|