Global Forum: Schedule Now Live >

Skip to main content
Hyperledger Foundation
search
Menu
  • Learn
    • Case Studies
    • White Papers
    • Training & Certification
    • Training Partners
    • Webinars
    • Research
    • Blockchain Showcase
    • Wiki
  • Use
    • Distributed Ledgers
    • Domain-Specific
    • Libraries
    • Tools
    • Tutorials
    • Hyperledger Certified Service Providers
    • Vendor Directory
  • Participate
    • Collaboration Tools
    • Contribute to Coding
    • Academic Collaboration
    • Find a Meetup
    • Regional Communities
    • Speakers Bureau
    • Join a Community Group
    • Labs
  • Events
  • News
    • Blog
    • Announcements
    • Newsletter
  • About
    • Join Hyperledger
    • Members
    • Leadership
    • Charter
    • Job Board
    • Contact Us
  • Join Now
  • English
    • 简体中文
    • Português
    • Français
    • Español
    • Malayalam
    • 日本語
  • search
Close Search

Hyperledger Ursa code review

By IDLab May 31, 2022 Blog, Hyperledger Ursa, Identity
  • No Comments
  • Love0

(Le français suit l’anglais)

Hyperledger Ursa is a shared cryptographic library used to avoid duplicating cryptographic related code. The library is an opt-in repository (for Hyperledger and non Hyperledger projects) to place and use crypto.

Broad deployment of digital identity will depend on strong security to deliver the high levels of assurance required in many consumer transactions with their governments, their financial institutions, and other trusted organisations. 

Leading advancements in decentralized identity, several originating in Canada, rely on the Hyperledger family of technologies. As such, Hyperledger Ursa is a central component depended upon to provide the security overlay for decentralized identity.

Rooted in a “trust but verify” mindset, several Canadian public sector entities and Interac (Canada’s interbank network) sponsored a project at the Digital Identity Laboratory of Canada (IDLab) to perform a security and cryptography code review of Hyperledger Ursa  (full report is available here).

Those commissioning this project deemed it important to have an arms-length third party assessment of this foundational component of the Hyperledger family to understand the risks (if any) being assumed with the  deployment and use of Hyperledger-base technology in the domain of decentralized identity.

Overview of Hyperledger Ursa  library code review scope:

A code review that examined: 

  • Entry points
  • Coding standards
  • Data storage and transfer
  • APIs and their security
  • Third party library usage
  • Programming language issue
  • Logic flaws

Cryptography best practices including examination of:

  • Cryptography and key management
  • Entropy
  • Best practice cryptography usage

The review did not include an assessment of the cryptographic algorithms foundation themselves, or their suitability. Examination was limited to assessment of sound implementation within Ursa.

Following the code review and the findings documented, the IDLab team worked closely with key Ursa contributors and the Hyperledger Foundation community to review and assess results. As a result, a number of enhancements were identified to address report findings. 

Ultimately, the exercise concluded that Ursa provides a solid security footing for projects dependent on the Hyperledger family of technologies applicable to digital identity. 

Review findings summary:

In general, the review noted a few relatively minor security defects, some implementation guidance, and some general observations for library improvement. 

These can be briefly described as follows:

  • Minor build issues
  • Cautions to consider when building, primarily with third party libraries or integrations
  • Minor issues related to lack of support for message augmentation
  • Minor issues related to subgroup validation
  • An issue related to public key validation

For those interested in the full report, please have a look here. You can also learn more by viewing this webinar:

If you have any questions about Hyperledger Ursa, you can engage with the community on the Hyperledger Foundation’s Discord server for Ursa. If you want to learn more about IDLab, please visit www.idlab.org.


Revue de code Hyperledger Ursa

Hyperledger Ursa est une librairie cryptographique partagée utilisée pour éviter la duplication du code lié à la cryptographie. La librairie est un répertoire opt-in (pour les projets Hyperledger et ceux qui ne le sont pas) pour placer et utiliser la cryptographie.

Le déploiement à grande échelle de l’identité numérique dépendra d’une forte sécurité afin de fournir les niveaux d’assurance élevés requis dans de nombreuses transactions des consommateurs avec leurs gouvernements, leurs institutions financières et d’autres organisations de confiance. 

Les principales avancées en matière d’identité décentralisée, dont plusieurs proviennent du Canada, reposent sur la famille de technologies Hyperledger. En tant que tel, Hyperledger Ursa est un composant central sur lequel on compte pour fournir la couche de sécurité pour l’identité décentralisée.

Dans un esprit «de confiance et de vérification» (en anglais, trust but verify), plusieurs entités du secteur public canadien et Interac (le réseau interbancaire du Canada) ont parrainé un projet au Laboratoire d’identité numérique du Canada (IDLab) pour effectuer une revue de code de sécurité et de cryptographie d’Hyperledger Ursa (le rapport complet est disponible ici, en anglais seulement).

Les initiateurs de ce projet ont estimé qu’il était important d’avoir une évaluation indépendante par un tiers de ce composant fondamental de la famille Hyperledger pour comprendre les risques (s’il y en a) assumés avec le déploiement et l’utilisation de la technologie basée sur Hyperledger dans le domaine de l’identité décentralisée.

Aperçu de la portée de la revue de code de la librairie Hyperledger Ursa :

  • Une revue de code qui a examiné : 
    • Les points d’entrée
    • Les standards de programmation
    • Stockage et transfert de données
    • Les interfaces API et leur sécurité
    • Utilisation de librairies de tiers
    • Problèmes de langage de programmation
    • Défauts de logique
  • Les meilleures pratiques en matière de cryptographie, y compris l’examen :
    • De la cryptographie et la gestion des clés
    • De l’entropie
    • Des meilleures pratiques en matière d’utilisation de la cryptographie

L’examen n’a pas inclus une évaluation de la fondation des algorithmes cryptographiques eux-mêmes, ni de leur aptitude. L’examen s’est limité à l’évaluation de la bonne mise en place dans Ursa.

Après l’examen du code et la documentation des résultats, l’équipe d’IDLab a travaillé en étroite collaboration avec les principaux contributeurs d’Ursa et les membres de la communauté de l’Hyperledger Foundation pour examiner et évaluer les résultats. En conséquence, un certain nombre d’améliorations ont été identifiées pour répondre aux conclusions du rapport. 

Ultimement, l’exercice a conclu qu’Ursa fournit une base de sécurité solide pour les projets qui dépendent de la famille de technologies Hyperledger applicables à l’identité numérique. 

Résumé des conclusions de l’examen :

En général, l’examen a relevé quelques défauts de sécurité relativement mineurs, quelques conseils de mise en place, et quelques observations générales pour l’amélioration de la librairie. 

Celles-ci peuvent être brièvement décrites comme suit :

  • Problèmes mineurs de construction
  • Précautions à prendre lors de la construction, principalement avec des librairies ou des intégrations de tiers
  • Problèmes mineurs liés à l’absence de prise en charge de l’augmentation des messages
  • Problèmes mineurs liés à la validation des sous-groupes
  • Un problème lié à la validation des clés publiques

Pour ceux qui souhaitent consulter le rapport complet, veuillez cliquer ici. Vous pouvez également en savoir plus en visionnant le webinaire ci-dessus (en anglais).

Si vous avez des questions sur Hyperledger Ursa, vous pouvez vous adresser à la communauté sur le serveur «Discord server for Ursa». Si vous souhaitez en savoir plus sur IDLab, veuillez consulter le site www.idlab.org.

Share:

Copyright © 2022 The Linux Foundation®. All rights reserved. Hyperledger Foundation, Hyperledger, and the other Hyperledger Foundation trademarks are trademarks of The Linux Foundation. For a list of Hyperledger Foundation trademarks, please see our Trademark Usage page. Linux is a registered trademark of Linus Torvalds. Privacy Policy and Terms of Use.

Close Menu
  • Learn
    • Case Studies
    • White Papers
    • Training & Certification
    • Training Partners
    • Webinars
    • Research
    • Blockchain Showcase
    • Wiki
  • Use
    • Distributed Ledgers
    • Domain-Specific
    • Libraries
    • Tools
    • Tutorials
    • Hyperledger Certified Service Providers
    • Vendor Directory
  • Participate
    • Collaboration Tools
    • Contribute to Coding
    • Academic Collaboration
    • Find a Meetup
    • Regional Communities
    • Speakers Bureau
    • Join a Community Group
    • Labs
  • Events
  • News
    • Blog
    • Announcements
    • Newsletter
  • About
    • Join Hyperledger
    • Members
    • Leadership
    • Charter
    • Job Board
    • Contact Us
  • Join Now
  • English
    • 简体中文
    • Português
    • Français
    • Español
    • Malayalam
    • 日本語