# gengetopt < ../gengetopt/option.ggo --output-dir=../gengetopt --file-name=option --unamed-opts package "BGNFCF" version "(version 2)" purpose " Ce programme a pour objectif de démontrer la faisabilité d'un traitement cohérent sur des données chiffrées, avec la cryptographie homomorphe. Il s'agit d'une preuve de concept. Les données traitées sont des sous-titres chiffrés avec le schéma homomorphe BGNFCF. Il s'agit d'une variante du schéma de Boneh Goh Nissim (2006) ayant subi la conversion de Freeman (2010) ainsi que la transformation de Catalano et Fiore (2015). Le traitement opéré sur les sous-titres est le changement de casse des caractères. Il s'opère en évaluant un circuit arithmétique de profondeur multiplicative 2. Description des circuits : minmaj : passage minuscule majuscule, sans erreur, avec précalcul et postcalcul demo : minmaj sur un caractère avec affichage des chiffrés et de l'évalué minmaj2 : passage minuscule majuscule, avec erreur minmaj3 : passage minuscule majuscule, avec erreur et postcalcul size : donne la taille en octets des chiffrés de différents niveaux time : donne le temps en millisecondes du précalcul, calcul et postcalcul time2 : donne le temps en millisecondes du chiffrement, de l'évaluation et du déchiffrement addition et multiplication : teste les différentes opérations possibles et donne le temps pour chacune chiffrement : chiffre et déchiffre en mode curve et twist sans évaluation homomorphique ip : mise à jour des ips et du compteur selon la valeur du compteur scalar_product : calcul du produit scalaire de vecteur de bits La version 2 effectue du calcul parallèle avec OpenMP. Le temps de calcul est diminué si l'on dispose de processeurs multi-coeurs. " #option "subtitle_source" s "Les sous-titres peuvent être choisis par le développeur ou l'utilisateur" values="dev", "usr" enum default="dev" optional option "subtitle" s "Pour indiquer les sous-titres en ligne de commande" string typestr="SUBTITLE" optional option "circuit" c "Pour indiquer le circuit de calcul. minmaj=avec précalcul et postcalcul, minmaj2=avec erreur, minmaj3=avec erreur et postcalcul." values="minmaj", "chiffrement", "additionL1", "additionL2", "additionL3", "additionL4", "multiplicationL1", "multiplicationL1L2", "multiplicationL2", "size", "time", "minmaj2", "minmaj3", "demo", "ip", "scalar_product", "time2" enum default="minmaj" optional