¿Dónde puedo encontrar un convertidor de cadena a bytes32 en línea?

Hasta ahora estoy usando este código de solidez.

pragma solidity 0.4.24;

contract Converter{
    function Converter(){

    }

    function stringToBytes32(string memory source) returns (bytes32 result) {
        bytes memory tempEmptyStringTest = bytes(source);
        if (tempEmptyStringTest.length == 0) {
            return 0x0;
        }

        assembly {
            result := mload(add(source, 32))
        }
    }
}

¿Existe un sitio web o una herramienta en línea para convertir fácilmente cadenas a bytes32?

Respuestas (6)

Si tiene instalado MetaMask, lo siguiente funciona en la consola del navegador:

> web3.padRight(web3.fromAscii('hello'), 34)
"0x68656c6c6f0000000000000000000000"
Esta respuesta ya no es correcta. De los documentos oficiales de Metamask : por razones históricas, MetaMask inyectado web3@0.20.7 está obsoleto. Tiene problemas de seguridad conocidos. Ya no es mantenido por el equipo de web3.js.

GUI en línea aquí para convertir bytes32 a cadena y viceversa: https://blockchangers.github.io/solidity-converter-online/

Cindercloud también tenía un convertidor en línea, así como otras herramientas útiles para interactuar con ethereum y otras cadenas.

Otra GUI en línea:

Convierta de bytes32/hex a una cadena/número o viceversa.

https://web3-type-converter.onbrn.com/

Puede usar la bytes32biblioteca de npm https://npm.devtool.tech/bytes32

$ npm install bytes32

$ npx bytes32
0x00000000000000000000000000000000000000000000000000000000000000000

$ npx string
0x737472696e6700000000000000000000000000000000000000000000000000000

Hice una utilidad en línea para la conversión inversa de String a Bytes32. También está del lado del cliente, por lo que todo se ejecuta en el navegador.

Convertidor en línea de cadena a Bytes32