标签: signature

我在哪里可以获得所有已知病毒签名的列表?

我在Python中编写了一些防病毒软件,但无法找到病毒签名.该软件的工作原理是将硬盘上的每个文件转储为十六进制,从而获得十六进制签名.我在哪里可以获得所有已知病毒的签名?

python antivirus signature signatures

9
推荐指数
2
解决办法
2万
查看次数

获取用Java或Groovy填充的有效oauth_signature的绝对最小代码?

所以我正在测试Rest OAuth实现.我的测试工具将发送HTTP请求,但我需要准备Authorization标头.

我需要的是:我想要一个有效的授权标题

我拥有:除了oauth_signature之外的所有标题我还有2个秘密,即token_secret和consumer_secret.我也拥有access_token.所以它真的归结为,不得不签署这个请求.我怎么做?

简介:我只需要为RESTful服务填充Authorization标头的oauth_signature部分.我该怎么做?

基本上:

oAuthHeader="OAuth";
oAuthHeader=oAuthHeader+" oauth_signature_method="+oauth_signature_method;
oAuthHeader=oAuthHeader+",oauth_version="+oauth_version;
oAuthHeader=oAuthHeader+",oauth_nonce="+oauth_nonce;
oAuthHeader=oAuthHeader+",oauth_timestamp="+oauth_timestamp;
oAuthHeader=oAuthHeader+",oauth_consumer_key="+oauth_consumer_key;
oAuthHeader=oAuthHeader+",oauth_token="+oauth_token;
oAuthHeader=oAuthHeader+",oauth_signature="+**oauth_signature**;

Authorization = oAuthHeader;
Run Code Online (Sandbox Code Playgroud)

我的问题是我没有oauth_signature部分.我不知道如何得到它.请帮忙?

java groovy oauth signature jar-signing

9
推荐指数
2
解决办法
2万
查看次数

函数式编程中的签名/类型(OCaml)

我开始学习函数式编程(OCaml),但我不了解关于fp的一个重要主题:签名(我不确定它是否是一个正确的名称).当我输入一些东西并用ocaml编译时,我得到了例子:

# let inc x = x + 1 ;;
val inc : int -> int = <fun>
Run Code Online (Sandbox Code Playgroud)

这是微不足道的,但我不知道,为什么:

let something f g a b = f a (g a b)
Run Code Online (Sandbox Code Playgroud)

给出一个输出:

val something : (’a -> ’b -> ’c) -> (’a -> ’d -> ’b) -> ’a -> ’d -> ’c = <fun>
Run Code Online (Sandbox Code Playgroud)

我想,这个主题对于你们很多人来说绝对是fp的基础,但我在这里寻求帮助,因为我没有在互联网上找到任何有关OCaml中签名的内容(有一些关于Haskell签名的文章,但不是解释).

如果这个主题以某种方式存活下来,我在这里发布了几个函数,这些签名让我感到困惑:

# let nie f a b = f b a ;; (* flip *)
val nie : (’a -> ’b -> ’c) …
Run Code Online (Sandbox Code Playgroud)

ocaml functional-programming signature

9
推荐指数
2
解决办法
3937
查看次数

验证两个apk文件是否使用相同的签名进行签名

我想验证两个APK文件是否已使用相同的证书签名.

我有可用的整个Java SDK,但是出于跨平台的原因,我希望从Java代码中获取它.

有任何想法吗?

java android signing signature

9
推荐指数
2
解决办法
4581
查看次数

顶级const不影响函数签名

来自C++ Primer第5版,它说:

int f(int){ /* can write to parameter */}
int f(const int){ /* cannot write to parameter */}
Run Code Online (Sandbox Code Playgroud)

这两个功能难以区分.但是如您所知,这两个函数在更新参数方面确实存在差异.

有人可以向我解释一下吗?


编辑
我想我没有很好地解释我的问题.我真正关心的是为什么C++不允许这两个函数同时作为不同的函数,因为它们在"是否可以写入参数"方面确实不同.直观地说,应该是!


编辑传递值
的性质实际上是通过将参数值复制到参数值来传递的.即使对于复制值为地址的引用指针也是如此.从来电者的角度来看,无论是常量还是非常量传递给函数不会影响复制到参数(当然类型)值.复制对象时 ,顶级const低级const之间的区别很重要.更具体地说,顶级const(不是
低的const)复制对象时会被忽略,因为复制不会影响复制的对象.复制或复制的对象是否为const无关紧要.
因此对于呼叫者来说,区分它们是没有必要的.可能,从功能的角度来看,顶级const参数不会影响接口和/或功能的功能.这两个功能实际上完成了同样的事情.为什么要打扰实施两份?

c++ const function signature

9
推荐指数
3
解决办法
1462
查看次数

使用BouncyCastle验证Java中的ECDSA签名时出错

我已经测试了一个解决方案,以验证ECDSA签名(如何从EC公钥字节中获取PublicKey对象?),它与给定数据完美配合.

这是数据:

byte[] pubKey = DatatypeConverter.parseHexBinary("049a55ad1e210cd113457ccd3465b930c9e7ade5e760ef64b63142dad43a308ed08e2d85632e8ff0322d3c7fda14409eafdc4c5b8ee0882fe885c92e3789c36a7a");
byte[] message = DatatypeConverter.parseHexBinary("54686973206973206a75737420736f6d6520706f696e746c6573732064756d6d7920737472696e672e205468616e6b7320616e7977617920666f722074616b696e67207468652074696d6520746f206465636f6465206974203b2d29");
byte[] signature = DatatypeConverter.parseHexBinary("304402205fef461a4714a18a5ca6dce6d5ab8604f09f3899313a28ab430eb9860f8be9d602203c8d36446be85383af3f2e8630f40c4172543322b5e8973e03fff2309755e654");
Run Code Online (Sandbox Code Playgroud)

这是代码(打印为true):

private static boolean isValidSignature(byte[] pubKey, byte[] message,byte[] signature) throws NoSuchAlgorithmException, NoSuchProviderException, InvalidKeyException, SignatureException, InvalidKeySpecException {
    Signature ecdsaVerify = Signature.getInstance("SHA256withECDSA", new BouncyCastleProvider());
    ecdsaVerify.initVerify(getPublicKeyFromBytes(pubKey));
    ecdsaVerify.update(message);
    return ecdsaVerify.verify(signature);
}

private static PublicKey getPublicKeyFromBytes(byte[] pubKey) throws NoSuchAlgorithmException, InvalidKeySpecException {
    ECNamedCurveParameterSpec spec = ECNamedCurveTable.getParameterSpec("prime256v1");
    KeyFactory kf = KeyFactory.getInstance("ECDSA", new BouncyCastleProvider());
    ECNamedCurveSpec params = new ECNamedCurveSpec("prime256v1", spec.getCurve(), spec.getG(), spec.getN());
    ECPoint point =  ECPointUtil.decodePoint(params.getCurve(), pubKey);
    ECPublicKeySpec pubKeySpec = …
Run Code Online (Sandbox Code Playgroud)

java bouncycastle signature ecdsa

9
推荐指数
1
解决办法
5428
查看次数

OpenSSL:RSA中使用私钥加密并使用公钥解密

我想使用 OpenSSL 和 RSA 算法用私钥加密文件:

openssl rsautl -in txt.txt -out txt2.txt -inkey private.pem -encrypt
Run Code Online (Sandbox Code Playgroud)

现在如果我进行解密操作:

openssl rsautl -in txt2.txt -pubin -inkey public.pem -decrypt
Run Code Online (Sandbox Code Playgroud)

此操作需要私钥

我知道我应该使用公钥来加密,如果我使用私钥,我就会得到签名。

但是,我想这样做是为了学习。

encryption rsa signature digital-signature

9
推荐指数
1
解决办法
1万
查看次数

将函数签名与文档字符串进行比较的工具

是否有工具可以检查文档字符串中列出的参数是否与函数调用的签名匹配?它应该能够处理 numpy 风格的文档字符串。我经常使用 R CMD CHECK,它可以发现 R 中的文档/代码不匹配,这非常有帮助。如果 Python 中有类似的东西那就太好了,但我还没有找到任何东西。

python docstring signature code-documentation visual-studio-code

9
推荐指数
1
解决办法
1670
查看次数

具有相同擦除的两种方法不一定是覆盖等价的(或者它们之间的签名不是子签名)?

我正在为jdk6阅读令人难以置信的书"java scjp认证的程序员指南",以及关于泛型覆盖的部分.在它上面描述了subsignature和override-equivalent,并描述了一些我引用的覆盖等价的例子:

给定以下三个类中的泛型方法声明:

static <T> void merge (MyStack<T> s1, MyStack<T> s2) { /*...*/ }

static <T> void merge (MyStack<T> s1, MyStack<? extends T> s2) { /*...*/ }

static <T> void merge (MyStack<T> s1, MyStack<? super T> s2) { /*...*/ }

在擦除之后,所有三种方法的签名是:merge(MyStack, MyStack) 即,方法的签名是覆盖等价的,因此这些方法不会过载.

我并不完全同意这些方法是覆盖等价的,事实上我认为这些方法有一个"擦除名称冲突",但没有一个是另一个的子签名...可能我错了所以我想对此有所了解.

子签名的定义让我觉得它们不是它们之间的子签名.

在JSL 6#8.4.2方法签名中(http://docs.oracle.com/javase/specs/jls/se6/html/classes.html#8.4.2)

如果两个方法具有相同的名称和参数类型,则它们具有相同的签名.如果满足以下所有条件,则两个方法或构造函数声明M和N具有相同的参数类型:

  • 他们.具有相同数量的形式参数(可能为零)

  • 它们具有相同数量的类型参数(可能为零)

  • 让我们<A1,...,An>为M的形式类型参数,让<B1,...,Bn>是N的形式类型参数重命名的N的类型艾一碧的每次出现相应类型变量的范围和参数类型M和N都是一样的了.

如果m2与m1具有相同的签名,或者m1的签名与m2的签名擦除相同,则方法m1的签名是方法m2的签名的子签名.

...

如果m1是m2的子签名或m2是m1的子签名,则两个方法签名m1和m2是覆盖等价的.

在JSL 8#8.4.2中.Method Signature(http://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.4.2)

两个方法或构造函数M和N具有相同的签名,如果它们具有相同的名称,相同的类型参数(如果有的话)(第8.4.4节),并且在将形式参数类型N调整为类型参数之后M,相同的形式参数类型.

方法m1的签名是方法m2的签名的子签名,如果:

  • m2与m1具有相同的签名,或

  • m1的签名与m2的签名擦除相同.

如果m1是m2的子签名或m2是m1的子签名,则两个方法签名m1和m2是覆盖等价的.

编辑1

简单来说,我的疑问是,从擦除方面的子签名定义我明白"没有擦除的一个签名等于来自其他签名的擦除"......而不是"擦除后的两个签名是相等的".它的微妙但重要(顺便说一句,覆盖等效定义是基于子签名定义,这就是为什么我用子签名来问)

java generics signature erasure

8
推荐指数
1
解决办法
359
查看次数

“forall”如何影响函数签名?

我使用“forall”量词声明了两个函数。其中第一个在签名之前有一个量词,其中包含所有泛型类型参数。第二个使用量词代替每个泛型类型参数的第一个用法。

\n
f :: forall a b c. a -> b -> c -> b -> a\nf a _ _ _ = a\n\ng :: forall a. a ->\n     forall b. b ->\n     forall c. c -> b -> a\ng a _ _ _ = a\n
Run Code Online (Sandbox Code Playgroud)\n

我期望这两个函数是相同的(区别仅在于描述的风格),但以下两个测试告诉我事实并非如此。

\n
w_f :: (forall a b c. a -> b -> c -> b -> a) -> Bool\nw_f _ = True\n\nw_g :: (forall a. a ->\n        forall b. b ->\n        forall c. c …
Run Code Online (Sandbox Code Playgroud)

haskell function signature parametric-polymorphism

8
推荐指数
1
解决办法
240
查看次数