2016-12-14 7 views
0

나는 pre_mg07a.py 파일을 사용하고 https://github.com/nikosft/IB-PREpython.exe를 내가 프록시 재 암호화 구현의 코드를 실행하려고

에 Nikosft에, 매력 암호화 HybridEnc.Decrypt()에 감사의 작동이 중지. 파이썬은 암호화와 재 암호화를 위해 모든 디버그 메시지를 실행하고 성공적으로 인쇄하지만, 다음 코드의 마지막 줄에는 python.exe가 작동을 멈췄다는 것을 보여줍니다. 나는 문제의 근원을 찾으려고 노력했지만, charm.adapters.pkenc_adapt_hybrid의 HybridEnc.decrypt() 메소드를 호출 할 때 암호 해독 중에 충돌이 발생한다는 것을 알고있다.

내 test.py 파일 :

from pre_mg07a import PreGA 

def main(): 
    from charm.toolbox.pairinggroup import PairingGroup,GT 
    from charm.core.engine.util import objectToBytes,bytesToObject 
    from charm.schemes.pkenc.pkenc_cs98 import CS98 
    from charm.toolbox.ecgroup import ECGroup 
    from charm.toolbox.eccurve import prime192v2 
    group = PairingGroup('SS512', secparam=1024) 
    groupcs98 = ECGroup(prime192v2) 
    pkenc = CS98(groupcs98) 
    pre = PreGA(group,pkenc) 
    ID1 = "nikos" 
    msg = group.random(GT) 
    print("MESSAGE:::::::\n %s", msg) 
    (master_secret_key, params) = pre.setup() 
    (public_key, secret_key) = pkenc.keygen() 
    id1_secret_key = pre.keyGen(master_secret_key, ID1) 
    ciphertext = pre.encrypt(params, ID1, msg) 
    re_encryption_key = pre.rkGenPKenc(params,id1_secret_key, public_key) 
    ciphertext2 = pre.reEncryptPKenc(params, re_encryption_key, ciphertext) 
    pre.decryptPKenc(params, public_key, secret_key, ciphertext2) #problem here 
if __name__ == "__main__": main() 

https://github.com/nikosft/IB-PRE/blob/master/pre_mg07a.py 파일 'decrptPKenc'방법

def decryptPKenc(self, params, public_key, secret_key, cid): 
    print('here') 
    Xbytes = pkenc.decrypt(public_key, secret_key, cid['C3'])#stopped working 
    X = bytesToObject(Xbytes, group)   
    m = cid['C2']/pair(cid['C1'],group.hash(X,G1))    
    if(debug): 
     print('\nDecrypting...') 
     print('m=>') 
     print(m) 
    return m 

플랫폼 세부 정보 : 윈도우 7 64 비트, 파이썬 3.4 32 비트, MSYS와는 MinGW 32 비트. 설치 : openssl 1.0.1u, GMP 5.0.2, PBC 0.5.14, Charm Crypto 0.43.

시도 : 다른 python 버전 2.7 및 3.2 사용. 나는 구성 할 수없고 그걸로 매력을 올바르게 만든다.

도움이 될 것입니다. 이것은 매우 구체적인 주제가 될 수 있지만, 문제는 다를 수 있습니다. 어떤 제안도 환영합니다.

답변

1

결국 창을 포기했습니다. Ubuntu 14.04를 사용해 보았습니다. 그리고 몇 가지 일반적인 설정 문제가있었습니다.

여기 파이썬 3.4에 대한 매력-암호화를 구성하는 방법을 다른 사람을 위해입니다 :

sudo apt-get install subversion 
sudo apt-get install m4 
sudo apt-get install flex 
sudo apt-get install bison 
sudo apt-get install libssl-dev 
sudo apt-get python3-setuptools python3-dev 
sudo apt-get libgmp-dev 
wget http://crypto.stanford.edu/pbc/files/pbc-0.5.14.tar.gz 
tar xf pbc-0.5.14.tar.gz 
cd pbc-0.5.14 
./configure && make && sudo make install 
다음 https://pypi.python.org/pypi/charm-crypto/0.43에서

다운로드 매력의 tar.gz 파일 추출, 변경된 디렉토리 :

./configure.sh 
sudo make 
sudo make install 
sudo ldconfig