Пример #1
0
 def test_export(self): # also tests import
     publickey.Identity('alice', basedir=self.pbp_path, create=True)
     publickey.Identity('bob', basedir=self.tmp_dir, create=True)
     export = pbp.export_handler('alice', basedir=self.pbp_path)
     key=self.tmp_dir+'/key.exp'
     with open(key, 'w') as fd:
         fd.write(export)
     pbp.import_handler(infile=key, basedir=self.tmp_dir)
     pks=publickey.get_public_keys(basedir=self.tmp_dir)
     self.assertEquals([p.name for p in pks if p.name!='bob'], ['alice'])
Пример #2
0
 def test_export(self):  # also tests import
     publickey.Identity('alice', basedir=self.pbp_path, create=True)
     publickey.Identity('bob', basedir=self.tmp_dir, create=True)
     export = pbp.export_handler('alice', basedir=self.pbp_path)
     key = self.tmp_dir + '/key.exp'
     with open(key, 'w') as fd:
         fd.write(export)
     pbp.import_handler(infile=key, basedir=self.tmp_dir)
     pks = publickey.get_public_keys(basedir=self.tmp_dir)
     self.assertEquals([p.name for p in pks if p.name != 'bob'], ['alice'])
Пример #3
0
        ensure_name_specified(opts)
        sigs = keycheck_handler(name=opts.name,
                         basedir=opts.basedir)
        if sigs:
            print >>sys.stderr, '[pbp] good signatures on', opts.name, 'from', ', '.join(sigs)
        else: print >>sys.stderr, '[pbp] NO GOOD SIGS FOUND'

    # export public key
    elif opts.action=='x':
        ensure_self_specified(opts)
        k = export_handler(opts.self,
                           basedir=opts.basedir)
        print k
    # import public key
    elif opts.action=='i':
        n = import_handler(infile=opts.infile,
                           basedir=opts.basedir)
        if n:
            print '[pbp] Success: imported public keys for', n
        else:
            print '[pbp] IMPORT FAILED'

    # forward encrypt
    elif opts.action=='e':
        ensure_recipient_specified(opts)
        ensure_only_one_recipient(opts)
        # TODO could try to find out this automatically if non-ambiguous
        ensure_self_specified(opts)
        chaining_encrypt_handler(opts.infile,
                        outfile=opts.outfile,
                        recipient=opts.recipient[0],
                        self=opts.self,
Пример #4
0
Файл: main.py Проект: fpletz/pbp
        ensure_name_specified(opts)
        sigs = keycheck_handler(name=opts.name,
                         basedir=opts.basedir)
        if sigs:
            print >>sys.stderr, 'good signatures on', opts.name, 'from', ', '.join(sigs)
        else: print >>sys.stderr, 'no good sigs found'

    # export public key
    elif opts.action=='x':
        ensure_self_specified(opts)
        k = export_handler(opts.self,
                           basedir=opts.basedir)
        print k
    # import public key
    elif opts.action=='X':
        n = import_handler(infile=opts.infile,
                           basedir=opts.basedir)
        if n:
            print 'Success: imported public keys for', n
        else:
            print 'import failed'

    # forward encrypt
    elif opts.action=='e':
        ensure_recipient_specified(opts)
        ensure_only_one_recipient(opts)
        # TODO could try to find out this automatically if non-ambiguous
        ensure_self_specified(opts)
        chaining_encrypt_handler(opts.infile,
                        outfile=opts.outfile,
                        recipient=opts.recipient[0],
                        self=opts.self,