From edaac3df4226f56e58380b0efa0586b2876ab297 Mon Sep 17 00:00:00 2001 From: fred Date: Wed, 19 Apr 2023 22:57:23 +0200 Subject: [PATCH] Add "login" feature using G1PASS QRCODE --- API/QRCODE.sh | 35 +++++++++++++++++++++++++++++++---- API/SALT.sh | 2 +- ASTROBOT/PLAYER.refresh.sh | 2 +- tools/VOEUX.print.sh | 2 +- www/G1PalPay/index.html | 4 ++++ 5 files changed, 38 insertions(+), 7 deletions(-) diff --git a/API/QRCODE.sh b/API/QRCODE.sh index 1487943c..0dea3c65 100755 --- a/API/QRCODE.sh +++ b/API/QRCODE.sh @@ -84,7 +84,7 @@ fi ################################################################################ ## MODE PGP ENCRYPTED QRCODE # /?qrcode=-----BEGIN%20PGP%20MESSAGE-----~~jA0ECQMC5iqIY7XLnGn_0koBJB5S2Sy1p%2FHr8CKFgWdZ9_j%2Fb2qdOznICGvqGCXY~7Flw6YtiabngvY6biq%2F0vpiFL8t8BSbMZe0GLBU90EMBrhzEiyPnh__bzQ%3D%3D~%3D9UIj~-----END%20PGP%20MESSAGE-----~ -# &pass=coucou&history/read/pay=1&g1pub=_DESTINATAIRE_ +# &pass=coucou&history/read/pay/login=(1|email)&g1pub=_DESTINATAIRE_ ################################################################################ if [[ ${QRCODE:0:5} == "~~~~~" ]]; then echo ${QRCODE} @@ -122,7 +122,7 @@ if [[ ${QRCODE:0:5} == "~~~~~" ]]; then echo "CURRENT KEY : $CURCOINS G1" [[ ${WHAT} == "" ]] && echo "
Missing amount
" >> ~/.zen/tmp/${MOATS}/disco - [[ ${VAL} == "" ]] && echo "
Missing Destination PublicKey
" >> ~/.zen/tmp/${MOATS}/disco + [[ ${VAL} == "" || ${VAL} == "undefined" ]] && echo "
Missing Destination PublicKey
" >> ~/.zen/tmp/${MOATS}/disco if [[ $APPNAME == "pay" ]]; then @@ -150,14 +150,41 @@ if [[ ${QRCODE:0:5} == "~~~~~" ]]; then echo "

${WHAT} ${VAL} ${CURCOINS} PROBLEM

" >> ~/.zen/tmp/${MOATS}/disco fi - else + fi + + if [[ $APPNAME == "pay" || $APPNAME == "history" ]]; then + ## history & read - cp ~/.zen/tmp/${MOATS}/secret.key ~/.zen/tmp/ + # cp ~/.zen/tmp/${MOATS}/secret.key ~/.zen/tmp/ echo "${MY_PATH}/../tools/jaklis/jaklis.py -k ~/.zen/tmp/secret.key $APPNAME -j" ${MY_PATH}/../tools/jaklis/jaklis.py -k ~/.zen/tmp/${MOATS}/secret.key $APPNAME -j >> ~/.zen/tmp/${MOATS}/disco fi + if [[ $APPNAME == "login" ]]; then + + PLAYER=${WHAT} + ISTHERE=$(ipfs key list -l | grep -w $PLAYER | cut -d ' ' -f1) + echo "IS THERE ? $ISTHERE" + [[ ${ISTHERE} == "" ]] \ + && ipfs key import ${PLAYER} -f pem-pkcs8-cleartext ~/.zen/tmp/coucou/${MOATS}.${G1PUB}.ipns.key \ + && ASTRONAUTENS=$(ipfs key list -l | grep -w $PLAYER | cut -d ' ' -f1) \ + || ASTRONAUTENS=${ISTHERE} + + REPLACE=${myIPFS}/ipns/${ASTRONAUTENS} + echo "${PLAYER} LOGIN - TW : ${REPLACE}" + + sed "s~_TWLINK_~${REPLACE}~g" ~/.zen/Astroport.ONE/templates/index.302 > ~/.zen/tmp/coucou/${MOATS}.index.redirect + echo "url='"${REPLACE}"'" >> ~/.zen/tmp/coucou/${MOATS}.index.redirect + ( + cat ~/.zen/tmp/coucou/${MOATS}.index.redirect | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 + echo "BLURP " && rm ~/.zen/tmp/coucou/${MOATS}* + [[ ${ISTHERE} == "" ]] && sleep 3600 && echo "${PLAYER} SESSION OVER" && ipfs key rm ${PLAYER} ## 1 HOUR SESSION + ) & + exit 0 + + fi + else echo "

$PASS : MAUVAIS PASS

" >> ~/.zen/tmp/${MOATS}/disco diff --git a/API/SALT.sh b/API/SALT.sh index a1f7d5b2..7283071a 100755 --- a/API/SALT.sh +++ b/API/SALT.sh @@ -446,7 +446,7 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh ## INSTALL PLAYER IPNS KEY ON STATION PLAYER=${WHAT} ipfs key import ${PLAYER} -f pem-pkcs8-cleartext ~/.zen/tmp/coucou/${MOATS}.${G1PUB}.ipns.key - ASTRONAUTENS=$(ipfs key list -l | grep $PLAYER | cut -d ' ' -f1) + ASTRONAUTENS=$(ipfs key list -l | grep -w $PLAYER | cut -d ' ' -f1) #~ WSTATION=$(cat ~/.zen/tmp/WSTATION 2>/dev/null) #~ [[ $WSTATION != "" ]] \ diff --git a/ASTROBOT/PLAYER.refresh.sh b/ASTROBOT/PLAYER.refresh.sh index 35e73f8e..e5f8acd3 100755 --- a/ASTROBOT/PLAYER.refresh.sh +++ b/ASTROBOT/PLAYER.refresh.sh @@ -58,7 +58,7 @@ for PLAYER in ${PLAYERONE[@]}; do ## MY PLAYER : RESTORE PLAYER KEY FROM G1PUB ipfs key export $G1PUB -o ~/.zen/tmp/${MOATS}/$PLAYER.key - [[ ! $(ipfs key list -l | grep $PLAYER | cut -d ' ' -f1) ]] && ipfs key import $PLAYER ~/.zen/tmp/${MOATS}/$PLAYER.key + [[ ! $(ipfs key list -l | grep -w $PLAYER | cut -d ' ' -f1) ]] && ipfs key import $PLAYER ~/.zen/tmp/${MOATS}/$PLAYER.key rm -f ~/.zen/tmp/${MOATS}/$PLAYER.key ## REFRESH CACHE diff --git a/tools/VOEUX.print.sh b/tools/VOEUX.print.sh index 80ceb2a6..902ae773 100755 --- a/tools/VOEUX.print.sh +++ b/tools/VOEUX.print.sh @@ -53,7 +53,7 @@ select voeu in "${vlist[@]}"; do voeu=$(echo $voeu | cut -d ':' -f2) ## Get G1PUB part TITLE=$(echo $voeu | cut -d ':' -f1) ## Get Voeu title - VOEUXNS=$(ipfs key list -l | grep $voeu | cut -d ' ' -f1) + VOEUXNS=$(ipfs key list -l | grep -w $voeu | cut -d ' ' -f1) choices=("TW" "G1") PS3='Imprimer le QR du TiddlyWiki TW ou celui de son G1 portefeuille ?' diff --git a/www/G1PalPay/index.html b/www/G1PalPay/index.html index 94668b83..5e98a5e6 100644 --- a/www/G1PalPay/index.html +++ b/www/G1PalPay/index.html @@ -123,6 +123,7 @@ a {
+ Login Messagerie Historique Payer @@ -184,6 +185,9 @@ a { if ( appname == 'pay') { var amount = prompt("Saisir MONTANT Ğ1:"); } + if ( appname == 'login') { + var amount = prompt("Saisir EMAIL:"); + } // DESTINATION WAS PREVIOUS SCAN if (document.getElementById("resu").innerHTML !== '') { var mypub = document.getElementById("resu").innerHTML.value;