prototipo-protocolo

Este repositorio contiene el código del prototipo desarrollado para verificar la factibilidad del protocolo propuesto en la tesis de maestría "Especificación Formal De Un Protocolo Criptográfico De Intercambio De Información Entre Blockchains"

https://github.com/asimogirl/prototipo-protocolo

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (3.4%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Este repositorio contiene el código del prototipo desarrollado para verificar la factibilidad del protocolo propuesto en la tesis de maestría "Especificación Formal De Un Protocolo Criptográfico De Intercambio De Información Entre Blockchains"

Basic Info
  • Host: GitHub
  • Owner: AsimoGirl
  • License: mpl-2.0
  • Language: TypeScript
  • Default Branch: main
  • Size: 751 KB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme License Citation

README.md

Español

Prototipo Protocolo Intercambio de Información entre Blockchains

Este repositorio contiene el código del prototipo desarrollado para verificar la factibilidad del protocolo propuesto en la tesis de maestría "Especificación Formal De Un Protocolo Criptográfico De Intercambio De Información Entre Blockchains"

Link de la tesis que contiene la descripción del protocolo: link tesiunam

Prerequisitos

  1. El código requiere que se tengan descargadas las wallets Metamask y Phantom en el navegador en el que se va a ejecutar las web apps. Se recomienda usar Google Chrome.

  2. Se deben tener cuatro cuentas en total: dos en la testnet de Sepolia (una para A y otra para pcn) y dos en la devnet de Solana (una para B y otra para pcn). Tratar que todas las cuentas tengan al menos 3 ETH para Sepolia y 3 SOL para Solana.

  3. Copiar el código del contrato inteligente web-ethereum>smartContracts>ProtocolActionsSCA.sol, editarlo con las direcciones de las cuentas que se vayan a usar y desplegarlo usando Remix, puede seguir el siguente tutorial para desplegar contratos inteligentes con Remix. Una vez desplegado el nuevo contrato inteligente, reemplazar el valor del rotocolActionsABI.jso con el nuevo valor creado.

  4. Seguir los pasos para instalar solana y anchor para desplegar contratos inteligentes en Solana y una vez instalado copiar el código del contrato inteligente web-solana>anchor>ProtocolActionsSCB.rs, editarlo con las direcciones de las cuentas que se vayan a usar y desplegarlo en Solana. Se puede seguir este tutorial para desplegar contratos inteligentes en Solana. Una vez desplegado el nuevo contrato inteligente, reemplazar el valor del idl.json con el nuevo valor.

  5. Obtener API Keys de los terceros que se vayan a usar para la comunicación con Ethereum, se puede omitir el uso de terceros, pero se debe modificar el código correspondiente.

  6. Crear un archivo .env donde se incluyan los valores de las API keys, los contratos inteligentes y las cuentas, escribiendolos el siguiente formato: ` API KEYS INFURAAPIKEY='' ETHERSCANAPIKEY='' ALCHEMYAPIKEY='' CHAINSTACKAPI_KEY=''

ADDRESSES USERAETHEREUMADDRESS='' NETWORKLEADERETHEREUMADDRESS='' NETWORKLEADERSOLANAADDRESS='' USERBSOLANAADDRESS=''

SMART CONTRACTS SMARTCONTRACTAETHEREUMADDRESS='' SMARTCONTRACTBSOLANAADDRESS='' SMARTCONTRACTBSOLANASTATE_ADDRESS='' `

Ejecutar el programa

  1. Una vez cubiertos los prerequisitos ejecutar el comando yarn install y luego el comando yarn vite, después copiar los links de localhosts en dos pestañas de su navegador electo y seguir la lógica del protocolo.

Owner

  • Name: Sandy
  • Login: AsimoGirl
  • Kind: user

I love learning and trying new projects.

Citation (CITATION.cff)

cff-version: 1.2.0
title: >-
  Prototipo Protocolo Intercambio de Información entre
  Blockchains.
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Sandra Del Mar
    family-names: Soto Corderi
repository-code: 'https://github.com/AsimoGirl/Prototipo-Protocolo'
abstract: >-
  Este repositorio contiene el código del prototipo
  desarrollado para verificar la factibilidad del protocolo
  propuesto en la tesis de maestría "Especificación Formal
  De Un Protocolo Criptográfico De Intercambio De
  Información Entre Blockchains"
license: MIT
date-released: '2024-11-30'

GitHub Events

Total
  • Watch event: 1
  • Push event: 23
  • Pull request event: 4
  • Create event: 5
Last Year
  • Watch event: 1
  • Push event: 23
  • Pull request event: 4
  • Create event: 5

Dependencies

package.json npm
  • @commitlint/cli ^19.3.0 development
  • @commitlint/config-conventional ^19.2.2 development
  • @eslint/js ^9.5.0 development
  • @types/eslint__js ^8.42.3 development
  • @types/node ^20.14.5 development
  • @types/react ^18.3.5 development
  • @types/react-dom ^18.3.0 development
  • @types/utf8 ^3 development
  • @typescript-eslint/eslint-plugin ^7.13.1 development
  • @typescript-eslint/parser ^7.13.1 development
  • autoprefixer ^10.4.19 development
  • concurrently ^9.0.1 development
  • eslint ^9.5.0 development
  • eslint-config-prettier ^9.1.0 development
  • eslint-plugin-import-order-aesthetic ^1.0.7 development
  • eslint-plugin-import-x ^0.5.1 development
  • eslint-plugin-jsx-a11y ^6.8.0 development
  • eslint-plugin-prefer-let ^3.0.1 development
  • eslint-plugin-prettier ^5.1.3 development
  • eslint-plugin-unicorn ^54.0.0 development
  • husky ^9.0.11 development
  • lint-staged ^15.2.7 development
  • prettier ^3.3.2 development
  • stylelint ^16.6.1 development
  • typescript ^5.4.5 development
  • typescript-eslint ^7.13.1 development
  • @vitejs/plugin-react ^4.3.1
  • react ^18.3.1
  • react-dom ^18.3.1
  • tslib ^2.6.3
  • tsx ^4.16.2
  • utf8 ^3.0.0
packages/bridge/package.json npm
  • @types/dotenv-parse-variables ^2.0.3 development
  • esbuild ^0.21.5 development
  • typescript ^5.4.5 development
  • @metamask/sdk ^0.26.4
  • @thesis/common workspace:*
  • dotenv-extended ^2.9.0
  • dotenv-parse-variables ^2.0.0
  • tsx ^4.15.6
packages/common/package.json npm
  • @types/dotenv-parse-variables ^2.0.3 development
  • dotenv-extended ^2.9.0 development
  • dotenv-parse-variables ^2.0.0 development
packages/web-ethereum/package.json npm
  • @types/dotenv-parse-variables ^2.0.3 development
  • dotenv-extended ^2.9.0 development
  • dotenv-parse-variables ^2.0.0 development
  • vite ^5.3.3 development
  • @metamask/sdk ^0.26.4
  • browserify ^17.0.0
  • ethers ^6.13.1
packages/web-solana/package.json npm
  • @esbuild-plugins/node-globals-polyfill ^0.2.3 development
  • @esbuild-plugins/node-modules-polyfill ^0.2.2 development
  • @eslint/js ^9.9.0 development
  • @types/react ^18.3.3 development
  • @types/react-dom ^18.3.0 development
  • @types/readable-stream ^4 development
  • @vitejs/plugin-react ^4.3.1 development
  • eslint ^9.9.0 development
  • eslint-plugin-react-hooks ^5.1.0-rc.0 development
  • eslint-plugin-react-refresh ^0.4.9 development
  • globals ^15.9.0 development
  • rollup-plugin-polyfill-node ^0.13.0 development
  • typescript ^5.5.3 development
  • typescript-eslint ^8.0.1 development
  • vite ^5.4.1 development
  • @coral-xyz/anchor ^0.30.1
  • @solana/wallet-adapter-base ^0.9.23
  • @solana/wallet-adapter-react ^0.15.35
  • @solana/wallet-adapter-react-ui ^0.9.35
  • @solana/wallet-adapter-wallets ^0.19.32
  • @solana/web3.js ^1.95.3
  • assert ^2.1.0
  • browserify-zlib ^0.2.0
  • buffer ^6.0.3
  • crypto-browserify ^3.12.0
  • process ^0.11.10
  • react ^18.3.1
  • react-dom ^18.3.1
  • readable-stream ^4.5.2
  • solana-connect ^0.1.10
  • stream-browserify ^3.0.0
  • tweetnacl ^1.0.3
  • util ^0.12.5
  • vite-plugin-node-polyfills ^0.22.0
yarn.lock npm
  • 1457 dependencies