如何在GJS中获取TlsCertificate的SHA1指纹?

时间:2017-09-27 08:11:50

标签: x509 glib gio gjs

我正在尝试获取Gio.TlsCertificate连接的指纹,据我所知它只是DER形式的证书的SHA1校验和。所以我想我可以在GLib.compute_checksum_for_data()对象的certificate属性上使用Gio.TlsCertificate,但是任何访问该属性的尝试都会导致:

  

JS ERROR:错误:无法在GValue中内省元素类型的容器

有没有办法可以访问证书属性,或者更简单的方法来在GLib中指纹证书?

1 个答案:

答案 0 :(得分:1)

这看起来像Gio.TlsCertificate.certificate生成的内省XML中的错误。我filed an upstream bug关于它。

与此同时,您可以通过使用g_object_get()手动检索属性并以此方式处理事务来解决此问题;我不知道JS中究竟有哪些变通方法。