Feedback

Modulare Exponentation

Sprache: VB

Die modulare, auch diskrete Exponentation genannt, ist ein Verfahren, um den Rest [b]r[/b] bei der Division der Potenz Basis [b]b[/b] hoch Exponent [b]e[/b] durch das Modul [b]m[/b] zu ermitteln: [b]r = b^e (mod m)[/b] Rein pragmatisch betrachtet lässt sich r nach obiger Gleichung leicht ermitteln, doch ist der Rechenaufwand und die Größe der Zahlen bei entsprechenden Basen und Exponenten erheblich. Da schafft die modulare Exponentation Abhilfe.. Weitere Informationen zu diesem Thema finden Sie hier: http://www.iti.fh-flensburg.de/lang/krypto/algo/modexp.htm
Function modpow(ByVal b As Integer, ByVal e As Integer, ByVal m As Integer) As Integer
    modpow = 1
    While e > 0
        If e And 1 Then modpow = (modpow * b) Mod m
        e >>= 1
        b = (b * b) Mod m
    End While
End Function
Function modpow(ByVal b As Integer, ByVal e As Integer, ByVal m As Integer) As Integer
    modpow = 1
    While e > 0
        If e And 1 Then modpow = (modpow * b) Mod m
        e >>= 1
        b = (b * b) Mod m
    End While
End Function