Use of cookies

We use our own and third-party cookies to improve our services. You can get more information and set your preferences.
Information on our cookies policy

Reject Cookies
Accept Cookies

Campus in maintenance
User and / or password incorrect
You have no active environment
Your access has been restricted. Consultation with the department of administration
Due to technical problems, the virtual campus is inaccessible. We are working to solve it. Sorry for the inconvenience.
Start   >  Master's & postgraduate courses  >  Education  >  Master's degree in Blockchain Technologies
Information session


Request information
Request information Request information or admission
Apply for admission
Apply for admission
  • discount
    This programme is part of the Employment Help grants programme


3rd Edition
60 ECTS (360 teaching hours)
Blended learning
Language of instruction
Notes payment of enrolment fee and 0,7% campaign
Registration open until the beginning of the course or until end of vacancies.
Start date
Classes start: 22/10/2020
Classes end: 11/10/2021
Programme ends : 28/10/2021
Monday: 6:30 pm to 9:30 pm
Wednesday: 6:30 pm to 9:30 pm
Thursday: 6:30 pm to 9:30 pm
Notes to the schedule.
Taught at
Tech Talent Center
C/ de Badajoz, 73-77
Why this programme?
Blockchain technologies are beginning to mature and create a great interest in both, the academic and industrial fields. Startups and industrial initiatives discover and propose new innovation projects based on Blockchain, making this technology one of the main vehicles of innovation and improvement for the coming years. In fact, the change of paradigm implied by Blockchain has generated and will generate numerous business opportunities and therefore job offers for specialists.

According to a report of the well-known portal for freelancers “Upwork”, the profile of "Blockchain developer" was the most interesting in terms of demand and salary in 2018 and it is expected that the demand will continue to grow exponentially. For this reason, UPC School promotes this master's degree, with a great practical and professional orientation, which is aimed at professionals who want to understand and develop secure applications with technology based on Blockchain. Given by renowned professionals, the master's degree includes comprehensive training in cryptography, security, distributed network technologies, Blockchain projects and crypto-currencies (Bitcoin, Ethereum, Hyperledger, IOTA, R3's Corda, etc.), development of Dapps and legal and business aspects.

The master's degree has the collaboration of the Alastria consortium, the first regulated network based on Blockchain, which includes the main banking, energy and information technology companies.
Promoted by:
  • Obtain applied cryptography knowledge for Blockchain: including, among others, digital signatures, multisigs, ring signatures, blind signatures, threshold cryptography, homomorphic cryptography and zero knowledge proofs (ZKP).
  • Understand quantum cryptography and measures to be taken into account in Blockchain to address the post-quantum era.
  • Understand the operation of Blockchain in its main variants.
  • Knowing specialised security structures and protocols such as identity management and electronic voting.
  • Achieve a suitable level for the development and deployment of distributed applications (Dapps) on Blockchain.
  • Develop a web application that can interact with smart contracts on the Blockchain.
  • Have an overview of business trends and legal aspects around Blockchain technologies.
Who is it for?
  • Application developers with solvency in the use of some programming language. Also to computer systems admins or people who develop similar functions.
  • People who have a degree on engineering, preferably in the fields of computer science or telecommunications.

Students must bring a laptop which allows the execution of virtual machines with some fluidity.

Training Content

List of subjects
4 ECTS 30h
Introduction to Blockchain, Consensus, Cloud and P2P
  • Introduction to Blockchain technologies
  • Distributed systems and consensus
    • Consensus on fail-stop systems: Paxos and RAFT.
    • Consensus on Byzantine systems: PBFT.
    • Sybil attacks and consensus with Proof of Work (PoW).
  • Networks and applications
    • Protocol stacks.
    • TCP/IP.
    • HTTP, WebSockets and Web services.
  • Virtualization, cloud and Docker containers
    • Operating systems virtualization.
    • Virtualization of networks.
    • Docker containers.
  • Peer-to-peer networks (P2P)
    • Overlays p2p.
    • Distributed hash tables (DHT).
    • Kademlia.
    • Distributed storage with the Interplanetary File System (IPFS).
6 ECTS 45h
Cryptography Basics
  • Classical cryptography
    • Caesar.
    • Playfair.
    • Vigenère.
    • Skytale.
  • Theoretical cryptography
  • Symmetric cryptography
    • Algorithms: Data Encryption Standard (DES) and Advanced Encryption Standard (AES).
    • Modes of operation.
  • Modular arithmetic
    • Modules.
    • Euler theorem.
    • Euclides algorithm.
    • Fast modular exponentiation.
    • Chinese theorem of the remains.
  • Modern public cryptography or asymmetrical cryptography
    • Rivest, Shamir y Adleman (RSA).
    • Diffie-Hellman.
    • Elgamal.
  • Digital signature
    • Hash functions.
    • The Anniversary paradox.
    • Examples and applications.
  • Elliptic curves
    • Definition and properties of elliptic curves.
    • Bilinear pairings
  • Signatures with elliptic curves
    • Elliptic Curve Digital Signature Algorithm (ECDSA).
      Boneh-Lynn-Shacham (BLS).
  • Complexity
    • Types of problems.
    • NP-complete problems.
  • Demonstrable security
    • Attackers models.
    • Security proofs.
  • Other cryptographic paradigms
    • Homomorphic cryptography.
    • Threshold cryptography.
    • Encryption based on attributes and identity.
  • Zero Knowledge Proofs (ZKPs)
    • Definition.
    • Zero-Knowledge Succinct Non-Interactive Argument of Knowledge (zk-SNARK).
  • Digital signatures with additional properties
    • Blind signatures.
    • Ring signatures.
    • Signatures zero knowledge.
    • Proxy signatures.
    • Group signatures.
  • Re-encryption and key exchange schemes
2 ECTS 15h
Quantum Computing and Post-quantum Cryptography
  • Basic elements of quantum mechanics
    • The qubit.
    • Generalized quantum measurements.
    • Entanglement.
    • Logic gates.
  • Quantum basics protocols
    • Tele-transport.
    • Dense coding.
    • Bell inequalities.
  • Quantum computing protocols
    • Dutsch-Josza.
    • Search in an unstructured record (Grover algorithm).
    • Factorization of prime numbers (Shor algorithm).
  • Quantum distribution of keys
    • Post-quantum cryptography based on lattices.
    • Integer lattice.
    • q-ari lattice.
    • Dual lattice.
  • Problems with lattices
    • SVP (Shortest Vector Problem).
    • CVP (Closest Vector Problem).
    • LWE (Learning With Errors).
    • SIS (Short Integer Solution).
    • ISIS (Inhomogeneous Short Integer Solution).
  • Ideal lattices
    • ring-lwe.
    • ring-SIS.
  • Examples of encryption systems, signatures and commitments with lattices
  • ZKP with lattices
    • Sigma-protocols.
    • Fiat-Shamir with aborts.
    • Stern code-based protocols.
4 ECTS 24h
  • Overview of the Bitcoin system
    • Blockchain and Bitcoin technology.
    • Overview of Bitcoin technology.
    • Accounts, keys and addresses.
  • Bitcoin Transactions
    • Basic definitions.
    • Bitcoin transaction format.
    • Bitcoin scripting language.
    • Transaction repositories.
    • Bitcoin blocks
    • Block structure of Bitcoin.
    • The Blockchain.
    • The mining process.
  • The Bitcoin P2P network
    • Network properties.
    • Network discovery and connection.
    • Mechanisms for data transmission.
  • Bitcoin second layer solutions
    • Micropayment channels.
    • Lightning network.
7 ECTS 48h
Tools for Web Dapp Development
  • Introduction to Javascript
    • Object Orientation.
    • Functions and functional programming.
  • Control version with GIT
  • nodejs
    • Package management.
    • Asynchronous programming.
  • Client/server applications
    • Development of a client/server application.
    • JSON-RPC: definition and applications in Blockchain.
  • Web applications
    • Frontend/backend versus client/server applications.
    • Express.
    • WebSockets.
  • Deployment in cloud of Web services
    • Microservice architectures.
    • Deployment of a service with a docker.
  • Testing of JavaScript applications
    • Types of tests: unit tests and integration tests.
    • Testing with mochajs and with the assertion libraries.
    • Introduction to smart contract testing with Javascript.
  • Application interfaces (API)
    • REST APIs.
    • graphQL.
    • gRPC.
  • Programming applications that use Javascript APIs
    • APIs with callbacks.
    • APIs with promises.
    • APIs with async/await.
  • Frontend development
    • Webpack.
    • React.
8 ECTS 54h
  • Criptography applied to networks
  • Public Key Infrastructure (PKI)
  • Hybrid cryptography
  • Authentication
    • Authentication protocols.
    • Password management.
  • Security protocols
    • TLS and MITM attacks.
    • SSH and VPNs.
  • Web security
    • CSRF (Cross-site Request Forgery).
    • XSS (Cross-site Scripting).
    • COURTS (Cross-origin Requests).
    • JWT (JSON Web Tokens).
    • Storage in Web applications and its relation to crypto wallets.
  • Advanced systems for security/privacy
    • eCash.
    • Anonymous identity.
    • Sharing secrets.
    • Onion Routing.
  • Structures with hash
    • Chains of hash.
    • Merkle trees.
    • Lamport firms.
  • Electronic voting systems
    • Secret of voting and anonymity of the voters.
    • Voter eligibility.
    • Integrity of votes and polls.
    • Transparent audit.
    • Privacy and integrity of voting and long-term privacy.
    • Protocols to guarantee privacy: pollsterless, two agencies, mix-net, homomorphic tally.
    • Protocols to facilitate verification: individual verifiability tests, universal verifiability tests, voting receipt and bulletin board.
    • Examples of electronic voting systems: Switzerland, Estonia and Australia.
    • Safe programming
    • Security by design.
    • SSDLC (Secure Software Development Life Cycle) and the common criteria.
    • Application at the basic level with github.
    • Software verification mechanisms: formal, semi-formal and manual.
    • Derivation, SMT, KEVM, code reviews and reversing.
    • Thread modeling and a catalog of good practices.
    • Examples of failures with safety analysis practices.
8 ECTS 54h
  • Ethereum Basis
    • Transactions and blocks in Ethereum.
    • The patricia tree.
    • Mining: ethash, DAG and uncles.
  • Devops: deployment of a private network with Ethereum
    • Automated deployment with Puppeth.
    • Use of different nodes: Geth, Parity and Quorum.
    • Alastria and use cases.
  • The EVM (Ethereum Virtual Machine)
    • Ether, gas and gasprize.
    • Events and the bloom filter.
    • Basic codes (Opcodes).
  • Smart Contracts
    • Programming with Solidity.
    • Patterns with Solidity.
    • Mappings, Arrays and Structures.
    • Smart Properties (Smart Properties).
    • Libraries, contracts and interactions between contracts.
  • Development of a Dapp
    • Interaction with the Smart Contracts from our Dapp with Web3.
    • Metamask.
    • Event management.
    • Contract testing.
    • Development with Truffle.
    • Off-chain services: Swarm / IPFS & Whisper.
  • Security analysis of smart contracts
    • Typical failure analysis.
    • Good practices.
  • Applications and use cases
    • Dapps (social networks, prediction markets, identity, etc.).
    • DAOs.
    • The Ethereum Request for Comments (ERCs).
    • Study of ERCs: ERC-20, ERC-223, ERC-721, ERC-777.
    • Digital Identity.
  • Scalability
    • Plasma.
    • Micro-raiden.
    • Sharding and Ethereum 2.0.
7 ECTS 42h
Altcoins and other Blockchain Projects
  • Hyperledger
    • The Hyperledger ecosystem.
    • Hyperledger Fabric, theoretical concepts of the platform: consensus, cryptographic mechanisms, type of the network, etc.
    • How to create a Hyperledger Fabric testnet from scratch.
    • Implement contracts in golang.
    • Go SDK to interact with Hyperledger.
  • R3 Corda
    • The network and the ledger.
    • Identities.
    • States and contracts.
    • Transactions and flows.
    • Consensus algorithms.
    • Notaries.
    • Temporary windows.
    • Oracles.
  • IOTA
    • Description of the project.
    • Tangle versus Blockchain.
  • Guest sessions for community projects.
4 ECTS 33h
Applications, Cases of Use, Business and Legal Aspects
  • Cryptourbanomics
    • Blockchain principles applied to cities and territories.
    • Guaranteeing the main characteristics of Blockchain in projects: disruption, distribution and decentralization.
    • Use case: shared energy self-consumption.
    • How Blockchain based solutions change the role of project actors.
    • Use case in urban policies.
    • The physical connotations of the distribution as an increase in resilience.
    • Use case: urban planning.
    • Common and democratic governance rules in distributed systems.
    • Use case: urban regulations and standards.
  • Economy and business
    • Tokenomics.
    • Cryptonomics.
  • Legal aspects and public procurement
  • Institutional initiatives to promote Blockchain technology
    • European declaration for the impulse of the technologies Blockchain.
    • Calls for national and European grants.
    • State of the art of standardization: ISO, ITU, ETSI, CEN / CENELEC and UNE.
    • Use cases: GDPR, digital identity, energy, health, automotive, logistics.
    • Who is who in Blockchain in Spain, actors?
10 ECTS 15h
Final Master's Project
Development of a Blockchain-based project
The projects can be developed over the Alastria network.
The UPC School reserves the right to modify the contents of the programme, which may vary in order to better accommodate the course objectives.
Special master's degree issued by the Universitat Politècnica de Catalunya. Issued pursuant to art. 34.1 of Organic Law 4/2007 of 12 April, amending Organic Law 6/2001 of 21 December, concerning Universities. To obtain it, is necessary to have an official university qualification. Otherwise, the student will receive a certificate of completion of the programme issued by the Fundació Politècnica de Catalunya.

Learning methodology

The teaching methodology of the programme facilitates the student's learning and the achievement of the necessary competences.

Learning tools
Participatory lectures
A presentation of the conceptual foundations of the content to be taught, promoting interaction with the students to guide them in their learning of the different contents and the development of the established competences.
Practical classroom sessions
Knowledge is applied to a real or hypothetical environment, where specific aspects are identified and worked on to facilitate understanding, with the support from teaching staff.
Case studies
Real or hypothetical situations are presented in which the students, in a completely participatory and practical way, examine the situation, consider the various hypotheses and share their own conclusions.
Students are given technical support in the preparation of the final project, according to their specialisation and the subject matter of the project.
Students are supported when undertaking group work, including theoretical sessions which provide the tools and knowledge needed to achieve a result. Ideas and results are exchanged between all the participating groups.
Assessment criteria
At least 80% attendance of teaching hours is required.
Level of participation
The student's active contribution to the various activities offered by the teaching team is assessed.
Solving exercises, questionnaires or exams
Individual tests aimed at assessing the degree of learning and the acquisition of competences.
Work out projects
Studies on a specific topic, by individuals or groups, in which the quality and depth of the work is assessed, among other factors.
Completion and presentation of the final project
Individual or group projects in which the contents taught in the programme are applied. The project can be based on real cases and include the identification of a problem, the design of the solution, its implementation or a business plan. The project will be presented and defended in public.
Work placements & employment service
Students can access job offers in their field of specialisation on the My_Tech_Space virtual campus. Applications made from this site will be treated confidentially. Hundreds of offers of the UPC School of Professional & Executive Development employment service appear annually. The offers range from formal contracts to work placement agreements.
Virtual campus
The students on this master's degree will have access to the My_ Tech_Space virtual campus - an effective platform for work and communication between the course's students, lecturers, directors and coordinators. My_Tech_Space provides the documentation for each training session before it starts, and enables students to work as a team, consult lecturers, check notes, etc.

Teaching team

Teaching staff
  • Grau Miró, Josep
    View profile in Linkedin
    Is a Blockchain expert currently working for CaixaBank as digital innovation project manager in the Innovation Department. Josep has a wide knowledge base and experience on innovation in banking and financial institutions and has been studying the Blockchain technology since 2014. Furthermore, Josep has been teaching technological innovation at UPC. Josep is a reference on Distributed Ledger Technologies. Specially in Hyperledger, Ethereum and Corda and different interoperability protocols.
  • Massanet, Adrià

    BCompSc with over 20 years experience within the areas of security, cryptography and digital identity software development. He has developed software and solutions from coding low-level drivers to designing requirements for building security software and operations for trustee systems as also reviewing designs and implementations for threat mitigation. Now focused on Ethereum and decentralized systems.

Associates entities

Collaborating partners

Career opportunities

  • Blockchain project and innovation manager for sectors such as asset tokenization, fintech, e-Heath, eGoverment, insurance, supply chain and social services.
  • Solutions designer for public and enterprise Blockchain ecosystems.
  • Solutions specialist for integrated Blockchain-IoT.
  • Developer and auditor of smart contracts.
  • Front-end developer (Web and mobile) for Blockchain and secure applications.
  • DevOps and sysAdmin specialised in Blockchain networks.
  • Cryptographically secure designer and developer of applications.
  • Specialist in distributed data storage solutions with privacy and legal compliance.

Request information or admission

Your request has been received correctly at the UPC School.

We will contact you soon.

Thank you for your interest in our training programmes.

Due to an error in the connection to the database, your submission has not been processed. Please try again later, phone us on (34) 93 112 08 08, or send us an email at:
You have exceeded the maximum size of the file
  • If you have any doubts about the master's degree.
  • If you want to start the registration procedure.
How to start admission
To start the enrolment process for this programme you must complete and send the form that you will find at the bottom of these lines.

Next you will receive a welcome email detailing the three steps necessary to formalize the enrolment procedure:

1. Complete and confirm your personal details.

2. Validate your curriculum vitae and attach any additional required documentation, whenever this is necessary for admission.

3. Pay €110 in concept of the registration fee for the programme. This fee will be discounted from the total enrolment fee and will only be returned when a student isn't admitted on a programme.

Once the fee has been paid and we have all your documentation, we will assess your candidacy and, if you are admitted on the course, we will send you a letter of acceptance. This document will provide you with all the necessary information to formalize the enrolment process for the programme.

  date protection policy

* Mandatory fields

Fatal error: Uncaught --> Smarty: Unable to load template 'file:default/' <-- thrown in /fpc/www/ on line 163