Skip to content
Snippets Groups Projects

Resolve "Migrate clear_on_drop -> zeroize"

Merged dvermd requested to merge dvermd/185-migrate-clear_on_drop-zeroize into dev

Closes #185 (closed)

Edited by dvermd

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • changed milestone to %v0.4 Full Mirror Node

  • dvermd restored source branch dvermd/185-migrate-clear_on_drop-zeroize

    restored source branch dvermd/185-migrate-clear_on_drop-zeroize

  • dvermd added 1 commit

    added 1 commit

    • 28a8271d - [ref] use zeroize crate instead of clear_on_drop

    Compare with previous version

  • Author Developer

    Effacer les secrets au drop de l'"objet" est super, je n'ai pas poussé l'analyse pour voir si l'on ne garde pas une référence à l'"objet" tout au long de la vie du programme. En tout cas, mon sentiment est que ça protège des éventuels pb avec les Move et Copy que la doc de zeroize indique. Sinon, faut passer par des Pin

    Dans le cas de dunitrust keys modify ..., les password et salt vont atterrir dans l'historique du bash de l'utilisateur. Il faudrait peut-être réfléchir à un autre moyen de récupérer les infos : fichier uniquement lisible par l'utilisateur ou champ de type password à saisir interactivement.

    Edited by dvermd
  • dvermd unmarked as a Work In Progress

    unmarked as a Work In Progress

  • Author Developer

    @librelois tu peux jeter un œil stp

  • Dans le cas de dunitrust keys modify ..., les password et salt vont atterrir dans l'historique du bash de l'utilisateur.

    les password et salt sont déjà demandés interactivement via des champs de type password via la commande wizard.

    En effet la commande modify devrait prendre uniquement le nouveau trousseau par fichier ou être supprimée, je t'invite a ouvrir un nouveau ticket pour ça :)

  • @dvermd en fait j'y est réfléchi et le mieux c'est de garder les sous commandes dunitrust keys modify member et dunitrust keys modify network mais de supprimer les options --password et --salt pour les remplacées par une saisie interactive du password et du salt, tu peut reprendre le code de wizard pour faire ça, sauf qu'ici il ne fuat poser aucune question et inviter directement a saisir le salt puis le password. Aussi il serait bien d'afficher la clé publique résultante avant de rendre le prompt. Tu peut au choix, traiter cela dans la même MR ou créer un ticket séparé :)

    EDIT: on pourra rajouter une option --file a ses 2 commandes pour charger le trouseau depuis un fichier mais ça ce fera l'objet d'un autre ticket car il faut déjà définir le/les format de fichier supportés.

    Edited by Éloïs
  • dvermd added 1 commit

    added 1 commit

    • 8542151a - [ref] use zeroize crate instead of clear_on_drop

    Compare with previous version

    • Author Developer
      Resolved by Éloïs

      @librelois, j'ai supprimé les options --password et --salt et j'ai affiché les clés pour toutes les sous commandes de modify. On se retrouve avec un code très similaire entre le wizard et le modify sauf qu'un des 2 demande confirmation utilisateur. Si besoin, je peux factoriser le tout avec une option ask_confirmation de type bool ou enum. J'attends ta décision sur la factorisation pour créer le ticket avec l'option --file

  • dvermd added 1 commit

    added 1 commit

    • 1da6598b - [ref] use zeroize crate instead of clear_on_drop

    Compare with previous version

  • Éloïs resolved all threads

    resolved all threads

  • Éloïs
  • Éloïs
  • Éloïs
  • @dvermd l'historique git est également a retravailler : il faut 2 commits différents, un pour zeroize et un pour la modif des sous commande dunitrust keys modify :)

  • Éloïs added 1 commit
  • Éloïs resolved all threads

    resolved all threads

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading