code: function sign(message, privateKey) {
      let ethMessage = ethHash(message);
      let pk = Buffer.from(strip0x(privateKey), 'hex');
      const ethMessageBuf = Buffer.from(strip0x(ethMessage), 'hex');
      const signature = ethutil.ecsign(ethMessageBuf, pk);
      return {
          v: signature.v,
          r: prefix0x(signature.r.toString('hex')),
          s: prefix0x(signature.s.toString('hex'))
      };
  }
docs: Creates a signature for the specified message the Ethereum way according to
  {@link https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_sign|eth_sign}
  @param {String} message - hexadecimal string
  @param {String} privateKey - hexadecimal string
  @returns {Object} Signature as an object literal with r, s and v properties.