예제 #1
0
 def to_string(self):
     if self.rounds == 5000 and self.implicit_rounds:
         hash = u("%s%s$%s") % (self.ident, self.salt, self.checksum
                                or u(''))
     else:
         hash = u("%srounds=%d$%s$%s") % (self.ident, self.rounds,
                                          self.salt, self.checksum or u(''))
     return uascii_to_str(hash)
예제 #2
0
 def to_string(self, _withchk=True):
     ss = u('') if self.bare_salt else u('$')
     rounds = self.rounds
     if rounds > 0:
         hash = u("$md5,rounds=%d$%s%s") % (rounds, self.salt, ss)
     else:
         hash = u("$md5$%s%s") % (self.salt, ss)
     if _withchk:
         chk = self.checksum
         hash = u("%s$%s") % (hash, chk)
     return uascii_to_str(hash)
예제 #3
0
    def to_string(self):
        version = self.version
        if version == 0x10:
            vstr = ""
        else:
            vstr = "v=%d$" % version

        data = self.data
        if data:
            kdstr = ",data=" + bascii_to_str(b64s_encode(self.data))
        else:
            kdstr = ""

        # NOTE: 'keyid' param currently not supported
        return "$argon2%s$%sm=%d,t=%d,p=%d%s$%s$%s" % (
            uascii_to_str(self.type),
            vstr, 
            self.memory_cost,
            self.rounds, 
            self.parallelism,
            kdstr,
            bascii_to_str(b64s_encode(self.salt)),
            bascii_to_str(b64s_encode(self.checksum)),
        )
예제 #4
0
 def _get_config(self, ident):
     """internal helper to prepare config string for backends"""
     config = u("%s%02d$%s") % (ident, self.rounds, self.salt)
     return uascii_to_str(config)
예제 #5
0
 def to_string(self):
     hash = u("%s%02d$%s%s") % (self.ident, self.rounds, self.salt,
                                self.checksum)
     return uascii_to_str(hash)
예제 #6
0
 def to_string(self):
     hash = self._template % (self.ident.strip(_UDOLLAR), self.rounds,
                              self.salt, self.checksum)
     return uascii_to_str(hash)
예제 #7
0
 def to_string(self):
     chk = (self.checksum or self._stub_checksum)
     hash = u("S:%s%s") % (chk.upper(), self.salt.upper())
     return uascii_to_str(hash)
예제 #8
0
 def to_string(self):
     data = (self.checksum or self._stub_checksum) + self.salt
     hash = self.ident + b64encode(data).decode("ascii")
     return uascii_to_str(hash)
예제 #9
0
 def to_string(self):
     data = self.salt + self.checksum
     hash = self.ident + b64encode(data).decode("ascii")
     return uascii_to_str(hash)
예제 #10
0
 def to_string(self):
     hash = u("%s%s") % (self.salt, self.checksum)
     return uascii_to_str(hash)
예제 #11
0
 def to_string(self):
     hash = u("_%s%s%s") % (h64.encode_int24(
         self.rounds).decode("ascii"), self.salt, self.checksum)
     return uascii_to_str(hash)
예제 #12
0
 def to_string(self):
     hash = u("@salt%s%s") % (self.salt, self.checksum or self._stub_checksum)
     return uascii_to_str(hash)
예제 #13
0
 def to_string(self):
     bhash = super(django_bcrypt_sha256, self).to_string()
     return uascii_to_str(self.django_prefix) + bhash
예제 #14
0
 def to_string(self):
     hash = u("%s%s,%d$%s") % (self.prefix, self.ident.strip(_UDOLLAR),
                               self.rounds, self.salt)
     if self.checksum:
         hash = u("%s$%s") % (hash, self.checksum)
     return uascii_to_str(hash)
예제 #15
0
 def to_string(self):
     return "%02d%s" % (self.salt, uascii_to_str(self.checksum))
예제 #16
0
 def to_string(self):
     hash = u("%s%s%s%s") % (self.ident, h64.encode_int6(
         self.rounds).decode("ascii"), self.salt, self.checksum or u(''))
     return uascii_to_str(hash)