SlideServe
Menu
Préférences
© SlideServe · v2026

Tonelli - Shanks Algorithm

tarmon avatar
18 diapositives · 475 Views · Jul 29, 2014

Tonelli - Shanks Algorithm. C# implementation. Introduction. Daniel Shanks(1917-1996) 1973 Alberto Tonelli (1849-1921) 1891. Χρήση του Αλγορίθμου. Όπου χρειάζεται υπολογισμός της τετραγωνικής ρίζας a(mod p) . Κρυπτοσύστημα Rabin Υπολογισμός σημείων σε Ελλειπτικές Καμπύλες.

Tonelli - Shanks Algorithm - slide 1
01 / 18Tonelli - Shanks Algorithm
1 / 17

Télécharger la présentation

Tonelli - Shanks Algorithm
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Tonelli-Shanks Algorithm C# implementation

  2. Introduction • Daniel Shanks(1917-1996) 1973 • Alberto Tonelli(1849-1921) 1891

  3. Χρήση του Αλγορίθμου • Όπου χρειάζεται υπολογισμός της τετραγωνικής ρίζας a(mod p). • Κρυπτοσύστημα Rabin • Υπολογισμός σημείων σε Ελλειπτικές Καμπύλες

  4. Ισοδυναμία (mod p) • Δυο αριθμοί a,bλέγονται ισοδύναμοι (mod p) αν ισχύει : Αυτό σημαίνει ότι: Το a αποκαλείται βάση και το b υπόλειμμα.

  5. Τετραγωνική Ρίζα (mod p) • Εαν έχουμε την ισοδυναμία: Τότε το x είναι η τετραγωνική ρίζα του a(mod p).

  6. Ταξη του a(mod m) • Τάξη του a(mod m), είναι το μικρότερο j για το οποίο ισχύει: Συμβολίζεται : Παράδειγμα:

  7. Θεώρημα Fermat-Euler-Lagrange Αν ισχύουν: • a,mείναι σχετικά πρώτοι μεταξύ τους , • p μονός πρώτος , • a,pσχετικά πρώτοι. Τότε: • πάντα υπάρχει. • (Μικρό Θεώρημα Fermat) • Αν τότε • (Κριτήριο Euler) σημαίνει ότι έχει ή δεν έχει ρίζα ο α(mod p).

  8. Λήμμα 1 • Αν p πρώτος και ισχύει : • Έχει ώς συνέπεια:

  9. Αλγόριθμος • Επιλέγουμε έναν αριθμό a και έναν πρώτο p>2 , με gcd(a,p) = 1. Θέλουμε να υπολογίσουμε το . Από το Μικρό Θεώρημα του Fermat έχουμε ότι: Άρα από το λήμμα 1 βρίσκουμε ότι:

  10. Αλγόριθμος 2) Αν το πρόσημο της παραπάνω αναλογίας είναι -1 τότε βάσει του κριτηρίου του Euler το a δεν έχει τετραγωνική ρίζα (mod p). Ο αλγόριθμός σταματάει εδω.

  11. Αλγόριθμος 3) Αν όμως το πρόσημο του 1 είναι + τότε παραγοντοποιούμε το p με τον εξής τρόπο: Με s περιττό και e θετικό.

  12. Αλγόριθμος 4) Εύρεση ενός αιρθμού n ο οποίος δεν έχει ρίζα (mod p) δηλαδή:

  13. Αλγόριθμος 5) Αρχικοποιούμε τις παρακάτω μεταβλητές (όλες οι αναλογίες είναι (mod p)) : (πρώτη πρόβλεψη για την τετραγωνική ρίζα) (πρώτη πρόβλεψη για τον fudge factor) (οι δυνάμεις του g θα ανανεώνουν τα x και b) (θα μειώνεται με κάθε ανανέωση του αλγορίθμου)

  14. Αλγόριθμος 6) Από το 3ο σημείο στο θεώρημα FEL υπάρχει ένας ακέραιος m για τον οποίο ισχύει: και Εύρεσηm για το οποίο ισχύει :

  15. Αλγόριθμος 7) Αν το m είναι 0 τότε τελιώσαμε,επιστρέφουμε την τιμή του x .

  16. Αλγόριθμος 8) Αν m > 0 τότε ανανεώνουμε τις μεταβλητές :

  17. Αλγόριθμος 9) Πάμε πίσω στο βήμα 6 με την νέα τιμή του r που είναι η παλιά τιμή του m. To m μειώνεται σε κάθε loop μέχρι να γίνει 0 και να σταματήσει στο βήμα 7.

  18. Πηγή: http://www.math.vt.edu/people/ezbrown/doc/sqrts.pdf