首页 > 解决方案 > 如何在 PDF Python 中显示数字签名

问题描述

我想以 PDF 格式从 pdf/eToken/certificate 中检索/导出已签名的信息/详细信息。

我正在关注以下网址

DLL:'c:\windows\system32\SignatureP11.dll'

参考网址: https ://github.com/m32/endesive/blob/master/examples/pdf-sign-cms-hsm.py


  dates = datetime.datetime.utcnow() - datetime.timedelta(hours=12)
  date = dates.strftime('%Y%m%d%H%M%S+00\'00\'')
  displayDate = dates.strftime('%Y-%m-%d %H:%M:%S %Z%z')
  singerDetails = ''# How to store subject information from etoken
  dct = {
      "sigflags": 3,
      "sigpage": 0,
      "sigbutton": True,
      "contact": "contac@gmail.com",
      "location": 'India',
      "signingdate": date.encode(),
      "reason": 'Sample sign',
      "signature":singerDetails,
      "signaturebox": (10, 0, 200, 100)
  }    
      
  fname = os.path.join(app.config['UPLOAD_FOLDER'],filename)
  datau = open(fname, 'rb').read()   
  try:
      clshsm = Signer(password)
      datas = pdf.cms.sign(datau, dct,
                       None, None,
                       [],
                       'sha256',
                       clshsm,
                       )
  except Exception as e:
      raise ValueError("Please insert DSC or "+str(e))          
      
      
  fname = fname.replace('.pdf', '-signed.pdf')
  with open(fname, 'wb') as fp:
      fp.write(datau)
      fp.write(datas)
      
  return  back_send_to_client(fname,filename)```  

**The question:**

How to print or show Owner/singer information like CN, Subject, etc from the certificate







标签: python-3.xpkcs#11dsc

解决方案


推荐阅读