Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
mojo-v — Extension du jeu d'instructions RISC-V pour le calcul secret renforcé par matériel utilisant l'encapsulation de clés ML-KEM-512 et le chiffrement SIMON-128, permettant une exécution sans dépendance des données avec des performances proches du natif. | Kitploit
Outils/GitHubGitHub/toddmaustin/mojo-v
Sécurité des Systèmes EmbarquésOutils de Chiffrement/DéchiffrementCryptographieProtection de la Vie PrivéeSécurité MatérielleArticles et RechercheApprentissage et Éducation
GitHubtoddmaustin/mojo-v

mojo-v

Extension du jeu d'instructions RISC-V pour le calcul secret renforcé par matériel utilisant l'encapsulation de clés ML-KEM-512 et le chiffrement SIMON-128, permettant une exécution sans dépendance des données avec des performances proches du natif.

Voir le dépôt
150918il y a 1 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Mojo-V Logo

Mojo-V : Calcul secret pour RISC-V

Mojo-V (prononcé « mojo-five ») est une nouvelle extension RISC-V qui introduit des capacités de programmation orientées confidentialité pour RISC-V. Mojo-V implémente le calcul secret, permettant une exécution sécurisée, efficace et insensible aux données (data-oblivious), sans dépendre de logiciels fragiles ni de la confiance accordée aux programmeurs. En séquestrant les données sensibles dans des registres secrets dédiés et en chiffrant la mémoire avec une clé tierce, Mojo-V empêche les divulgations et impose un calcul à la fois aveugle (aucune divulgation directe) et silencieux (aucune fuite par canaux auxiliaires). La conception s'intègre de manière transparente dans l'ISA RISC-V existante avec seulement un bit de mode et quatre nouvelles instructions, appliquées entièrement au décodage. Les premiers résultats montrent des vitesses d'exécution proches du natif, tout en offrant une amélioration de performance de 5 à 7 ordres de grandeur par rapport au chiffrement totalement homomorphe (FHE), avec une feuille de route claire pour l'intégration dans les CPU, GPU et accélérateurs spécialisés.

Pour en savoir plus...

  • Voici une vidéo de présentation de Mojo-V : https://www.youtube.com/watch?v=HUT46TcNyyM
  • Des diapositives qui donnent un aperçu du projet Mojo-V : https://drive.google.com/file/d/1VVzZqYHvQgnKMgXZjg7I_cX2GzF7awSN

La spécification actuelle de l'extension ISA Mojo-V (version 1.02) :

  • [Au format PDF.] (https://drive.google.com/file/d/1yfiBqp0xyXD-S_G5d2o7Ggta5wI6nRot)

Pour contacter les développeurs de Mojo-V :

  • E-mail: [email protected]

🧩 Plateforme de référence Mojo-V — Version 1.03

🚧 État du projet

La plateforme de référence Mojo-V version 1.03 implémente une plateforme de simulateur Spike de référence pour RISC-V RV64GC ainsi que le compilateur EXO pour la spécification ISA Mojo-V v1.02. L'implémentation actuelle prend en charge les modes de chiffrement rapide, robuste et à preuve (proof-carrying), ainsi que la divulgation sécurisée des résultats de calcul chiffrés et la génération certifiée de nombres aléatoires. La version inclut une large gamme de tests Mojo-V, des benchmarks orientés confidentialité et des applications de démonstration pour la divulgation sécurisée. Elle inclut également la spécification complète de l'ISA Mojo-V et la documentation développeur.

Cette version est appropriée pour être utilisée comme i) une plateforme de développement d'applications Mojo-V, ii) un modèle de référence (golden model) pour valider les implémentations matérielles Mojo-V, et iii) une implémentation de référence pour l'analyse de sécurité. Les travaux actuels se concentrent sur le développement de i) un compilateur Mojo-V basé sur LLVM, ii) un modèle Mojo-V basé sur gem5 pour l'exploration et l'analyse architecturales, et iii) une implémentation RTL SystemVerilog de référence CVA6 de RISC-V RV64GC avec les extensions Mojo-V.

Version de spécification : 1.02 (Août 2026)
Contact : [email protected]

Composants actuels

  1. Spécification ISA Mojo-V v1.02

    • publiée dans doc/
  2. Spike (simulateur de jeu d'instructions) avec extensions Mojo-V

    • Mojo-V intégré dans riscv-isa-sim, et fonctionnellement complet pour un CPU RV64GC avec encapsulation de clé ML-KEM-512 pour le chargement des contrats de données, et chiffrement symétrique SIMON-128 pour la protection du calcul secret.
    • Pour exécuter Spike avec les extensions Mojo-V activées, ajoutez le drapeau --isa=rv64gc_zicond_zkmojov_zicntr lors de l'exécution de spike
  3. Multi-outil de contrat de données

    Les contrats de données sont des paquets chiffrés qui permettent au matériel d'un CPU Mojo-V d'accéder à la clé d'accès aux données et aux informations de configuration (par exemple, le mode de chiffrement mémoire) pour un ensemble de données chiffrées Mojo-V. Le multi-outil DC offre les capacités suivantes :

    • Les développeurs matériels peuvent créer des paires de clés publiques/privées ML-KEM512 : les clés publiques sont partagées avec les fournisseurs de services, les clés privées sont intégrées dans l'implémentation matérielle Mojo-V.
    • Les propriétaires de données peuvent créer des contrats de données et les chiffrer avec les clés publiques ML-KEM512 des fournisseurs de services. Le matériel Mojo-V correspondant peut alors effectuer un calcul secret sur les données chiffrées protégées par un tiers.
  4. Benchmarks Mojo-V Bringup-Bench

    • Batterie complète de tests de sécurité pour RV64GC+Mojo-V
    • Batterie complète de tests d'attaques d'intégrité pour RV64GC+Mojo-V
    • Batterie complète de tests de la bibliothèque du compilateur EXO
    • Batteries complètes de tests des bibliothèques mathématiques et de chaînes de caractères EXO
    • De nombreux benchmarks orientés confidentialité construits à l'aide de la bibliothèque du compilateur EXO Mojo-V
    • Batterie complète d'applications de démonstration de divulgation sécurisée
    • Batterie complète d'applications de démonstration TRNG certifiée
    • Exemples codés à la main (par exemple, tri à bulles) montrant Mojo-V effectuant du calcul secret

Note : le reste des benchmarks Bringup-bench n'a pas encore été porté vers Mojo-V.

⚙️ Compilation et exécution de la plateforme de référence Mojo-V

A. Installer un compilateur LLVM RISC-V

Vous aurez besoin d'un compilateur croisé RISC-V basé sur LLVM capable de produire des binaires RV64GC.

Voici un bon point de départ : https://github.com/openssl/openssl

B. Installer OpenSSL version 3.6 ou plus récente

Vous aurez besoin d'une installation de développement d'OpenSSL version 3.6 ou plus récente. Celle-ci fournit les bibliothèques qui implémentent ML-KEM512, utilisées par Spike pour l'échange de clés protégé.

Voici un bon point de départ : https://clang.llvm.org/get_started.html

C. Cloner le dépôt Mojo-V```bash

git clone https://github.com/toddmaustin/mojo-v.git cd mojo-v

### D. Construire le simulateur Spike RISC-V avec le support Mojo-V```bash
sudo apt-get install device-tree-compiler libboost-regex-dev libboost-system-dev
cd riscv-isa-sim
mkdir build
cd build
../configure --prefix=$RISCV
make

E. Construire et tester le Data Contract Multi-tool

Les contrats de données sont des paquets chiffrés qui permettent au matériel d'un CPU Mojo-V d'accéder à la clé d'accès aux données et aux informations de configuration (par exemple, le mode de chiffrement de la mémoire) pour un ensemble de données chiffrées Mojo-V.``` cd dc-tool make clean build test

### **E. Compiler et exécuter les tests de référence Mojo-V Bringup-Bench**

1. **Compiler le pilote de périphérique Spike**   ```bash
   cd bringup-bench/target
   make
  1. Configurez votre compilateur

    Modifiez ../Makefile et définissez TARGET_CC pour la cible mojov sur l'emplacement de votre compilateur RISC-V basé sur LVM Clang.

  2. Compilez et testez les programmes de test Bringup-Bench ```bash cd .. # go to the top-level bringup-bench directory make TARGET=mojov-spike mojov-tests # run all Mojo-V tests

En alternative, vous pouvez exécuter un benchmark individuel en vous rendant dans son répertoire et en exécutant la commande suivante. ```bash cd ../mojov-test make TARGET=mojov-spike clean build test

## 🧪 Aperçu des tests de Mojo-V Bringup-Bench
Télécharger l’outil