public function getFingerprintByPublicKey($publicKeyString)
    {
        $keyResource = openssl_pkey_get_public($publicKeyString);
        $keyDetails = openssl_pkey_get_details($keyResource);
        $modulus = $this->sshConvertMpint($keyDetails['rsa']['n']);
        $publicExponent = $this->sshConvertMpint($keyDetails['rsa']['e']);

        $rsaPublicKey = pack('Na*Na*Na*', strlen('ssh-rsa'), 'ssh-rsa', strlen($publicExponent), $publicExponent, strlen($modulus), $modulus);

        return md5($rsaPublicKey);
    }