小编Met*_*ble的帖子

xml签名DS前缀?

有没有办法用RSA签署XML文件并使用命名空间前缀"ds:Signature"而不是"Signature"?我花了很多时间来解决这个问题,从我看来没有解决方案.

似乎它在System.Security.Cryptography.Xml.Signature类中是硬编码的.

XmlElement element = document.CreateElement("Signature", "http://www.w3.org/2000/09/xmldsig#");
Run Code Online (Sandbox Code Playgroud)

如果有人知道解决方案,我需要签署它,因为导入它的软件使用"ds:signature"验证它,所以使用"ds"前缀软件验证它是这样的:

    public static bool VerifySignature(XmlDocument doc, RSA key, string prefix)
    {
        SignedXml xml = new SignedXml(doc);
        string str = "Signature";
        if (!string.IsNullOrEmpty(prefix))
        {
            str = string.Format("{0}:{1}", prefix, str);
        }
        XmlNodeList elementsByTagName = doc.GetElementsByTagName(str);
        xml.LoadXml((XmlElement)elementsByTagName[0]);
        return xml.CheckSignature(key);
    }

  VerifySignature(xmlDoc, rsa, "ds");
Run Code Online (Sandbox Code Playgroud)

通常它会这样:

<kk>blabla<Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><DigestValue>rVL2nKjPTBhL9IDHYpu69OiE8gI=</DigestValue></Reference></SignedInfo><SignatureValue>CfXW9D/ErmHjzxIjy0/54/V3nst6j/XXcu7keR17LApfOZEpxjEvAlG3VnBZIi3jxQzU6t9RkmfDyngcRZccJByuuA6YDwFTQxZNRgu2GRoZxMKWnkm+MtQ0jH0Fo78GivCxV+iIewZvsrUQLzG01cXuZSH/k2eeMUaEooJaLQiYpO2aNVn5xbosTPtGlsACzFWz34E69/ZeeLZbXLc3jpDO+opxdYJ5e+Tnk/UM2Klt+N+m7Gh/sUNTPgkDiwP3q3y3O9tvCT0G2XmQaWBP4rw9TIoYHQtucm2b8R2JeggbeRKOetbRYV218RT8CK2Yuy0FIUlQXdabKyp9F96Yc55g8eNe10FGtgietH2iqquIVFLCA8fu3SZNLDPMoyHnVNKdBvI35+S8hrAaybEkMvo7iYnUSY5KrlGSfGGtfQXdaISutAzcnGPDFXgZXPNzNy7eL0u+Lt3yWWkj7wh6Zeh4fH2+nXDWYCWbLpegAEX4ZWSI5Ts6D1TplMJTGH1F0GyflehH4u+W4Lc3TvkB4dWjEuiKgnpl3hcvoj2CWFaeAxXMd/64tU/YMm8+1gSBjkVH6oV+QlI/m0z6M8FPVEVC2as0wLG2woVwmzVLcaQKyPi7NN4eO9ea7QNfaRHaofU4LQO/Y3FNJOP+uMfYlGJKWSr3qv29+BQjeNldNJY=</SignatureValue></Signature></kk>
Run Code Online (Sandbox Code Playgroud)

我需要它像这样做:

<kk>blabla<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"><ds:SignedInfo><ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /><ds:Reference URI=""><ds:Transforms><ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></ds:Transforms><ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><ds:DigestValue>rVL2nKjPTBhL9IDHYpu69OiE8gI=</ds:DigestValue></ds:Reference></ds:SignedInfo><ds:SignatureValue>CfXW9D/ErmHjzxIjy0/54/V3nst6j/XXcu7keR17LApfOZEpxjEvAlG3VnBZIi3jxQzU6t9RkmfDyngcRZccJByuuA6YDwFTQxZNRgu2GRoZxMKWnkm+MtQ0jH0Fo78GivCxV+iIewZvsrUQLzG01cXuZSH/k2eeMUaEooJaLQiYpO2aNVn5xbosTPtGlsACzFWz34E69/ZeeLZbXLc3jpDO+opxdYJ5e+Tnk/UM2Klt+N+m7Gh/sUNTPgkDiwP3q3y3O9tvCT0G2XmQaWBP4rw9TIoYHQtucm2b8R2JeggbeRKOetbRYV218RT8CK2Yuy0FIUlQXdabKyp9F96Yc55g8eNe10FGtgietH2iqquIVFLCA8fu3SZNLDPMoyHnVNKdBvI35+S8hrAaybEkMvo7iYnUSY5KrlGSfGGtfQXdaISutAzcnGPDFXgZXPNzNy7eL0u+Lt3yWWkj7wh6Zeh4fH2+nXDWYCWbLpegAEX4ZWSI5Ts6D1TplMJTGH1F0GyflehH4u+W4Lc3TvkB4dWjEuiKgnpl3hcvoj2CWFaeAxXMd/64tU/YMm8+1gSBjkVH6oV+QlI/m0z6M8FPVEVC2as0wLG2woVwmzVLcaQKyPi7NN4eO9ea7QNfaRHaofU4LQO/Y3FNJOP+uMfYlGJKWSr3qv29+BQjeNldNJY=</ds:SignatureValue></ds:Signature></kk>
Run Code Online (Sandbox Code Playgroud)

c# xml frameworks prefix digital-signature

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

ini-option CASE_SPLIT产生奇怪的模型

在使用z3处理我的硕士论文时,我发现了一些我无法理解的奇怪的东西.我希望你能帮助我.:)

我写的smt文件看起来像这样:

(set-logic QF_UF)
(set-info :smt-lib-version 2.0)

;Declare sort Node and its objects.
(declare-sort Node 0)
(declare-fun n0 () Node)
(declare-fun n1 () Node)

;Predicate
(declare-fun dead_0 (Node) Bool)
;Abbreviation
(declare-fun I () Bool)

;initial configuration
(assert(= I (and 
(not(= n0 n1))
(not(dead_0 n0))
(dead_0 n1))))

;Predicate
(declare-fun dead_1 (Node) Bool)
;variable
(declare-fun m0_1 () Node)

;Abbreviation for Transformation
(declare-fun TL1_1 () Bool)

;Transformation1neuerKnoten1
(assert(or (= m0_1 n0)(= m0_1 n1)))

;Is the whole formula satisfiable?
(assert(= (and I TL1_1) true)) …
Run Code Online (Sandbox Code Playgroud)

z3

6
推荐指数
1
解决办法
146
查看次数

显示弹出窗口时保持NSStatusBarButton突出显示

实际上所有的NSStatusItem已经被弃用了10.10并且底层的行为NSStatusBarButton似乎令人困惑.

目前我正在开发一个菜单栏应用程序.当用户单击应用程序的菜单栏图标时,我的应用程序委托中的方法通过target-action调用,该方法显示NSPopover(或者如果已经可见则关闭它)并包含一些信息.

通常情况下,如果您使用NSStatusItem关联NSMenu,当用户单击菜单栏图标时图标仍然以蓝色突出显示为蓝色,直到菜单关闭.同样,单击系统音量图标会弹出滑块并将其图标突出显示为蓝色,直到包含滑块的视图消失.

但是,由于我是打开NSPopover的人,系统会在鼠标按下时突出显示蓝色图标,然后在调用方法后将其返回到正常状态.意思是我在循环中似乎没有什么可以保持高亮.我希望图标继续在鼠标上突出显示,并且只在我告诉它时才恢复正常(即,当我关闭我的弹出框时.)

我不知道该怎么做.我试过用了

[self.statusItem.button setHighlighted: YES];
//or [self.statusItem.button highlight: YES];
Run Code Online (Sandbox Code Playgroud)

当我在我的app delegate中收到鼠标注册事件并打开popover时.问题是系统仍然有它,显然,从早期鼠标向下突出显示此帧/循环,并在我将其设置为突出显示后立即将其设置为由于鼠标向上而不突出显示.我可以通过将其封装在一个方法中并在一瞬间使用计时器或延迟选择器运行该方法来解决这个问题.这允许我保持图标突出显示但引入闪烁; 当鼠标向下移动时,图标会自动突出显示,因为鼠标向上移动它会突出显示一帧,然后我的方法重新突出显示它.

我还想也许我可以使用弃用setHighlightMode:并将其设置NO为阻止图标在点击时自动突出显示,然后使用setHighlighted: / highlighted:手动设置但不起作用.同样,我想也许这也可行:

 NSButtonCell* cell = (NSButtonCell*)self.statusItem.button.cell;
cell.highlightsBy = NSNoCellMask;
Run Code Online (Sandbox Code Playgroud)

但无论点击它是否会自动突出显示图标,并在调用方法后立即将鼠标高亮显示在鼠标上.

基本上:

  1. 不希望的自动突出显示行为会NSStatusBarButton干扰手动设置高亮状态,除非我延迟手动设置它会引入短暂的闪烁.
  2. 似乎唯一成功禁用此自动行为的是弃用setHighlightMode:,但这似乎可以防止所有突出显示,无论是否手动.
  3. 唯一的解决方法似乎是向NSButtonCell添加一个子视图,为鼠标添加一个事件监听器,然后按照此处设置superview的高亮状态: NSStatusBarButton保持突出显示, 但我认为有一个更简单的方法只是...完全禁用自动突出显示.

tl; dr:有没有办法让我轻松地完全控制何时何时没有突出显示我的菜单栏图标,这样我可以在显示NSPopover时自然突出显示?

macos cocoa objective-c nsstatusitem osx-yosemite

6
推荐指数
1
解决办法
834
查看次数

"无法打开日志设备'dev/log/main'"错误?

我使用的是root的galaxy s2 4.0.3,我最近尝试编写一个Android应用程序.我试图在eclipse中使用logcat,它打印了以下回复:

unable to open log device 'dev/log/main' No such file or directory

我在论坛上找到了答案; 有人写了更改文件init.d夹中的文件,但我没有这样的文件夹.我不使用华为,所以特殊代码在这里不会有用.我甚至尝试在我的设备上安装logcat应用程序,但它们也没有用!

请指教.

android logcat galaxy

5
推荐指数
1
解决办法
4249
查看次数

如何确定我是否有指向已发布对象的指针?

在一个函数中,我正在处理一个可能有时被破坏的对象,在运行时,我可以以某种方式确定我的对象是否已损坏?

debugging xcode objective-c

3
推荐指数
1
解决办法
1850
查看次数

在命令行参数中给出特殊字符

大家好!我编写了这个程序来读取命令行参数.

public class UseArgument {
public static void main(String args[])
{
    System.out.print("hi, ");
    System.out.print(args[0]);
    System.out.println(" How are you?");
}
}
Run Code Online (Sandbox Code Playgroud)

我试图通过命令行发送以下参数:

java UseArgument @!&^%
Run Code Online (Sandbox Code Playgroud)

并且它抛出如下错误.输出:

hi, @! How are you?
Run Code Online (Sandbox Code Playgroud)

''%''不被识别为内部或外部命令,可操作程序或批处理文件.

java UseArgument @!^%
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释这种行为吗?这与正则表达式有关吗?

谢谢.西瓦基兰湾

java

0
推荐指数
1
解决办法
4463
查看次数

有没有办法只允许UIViewControllers遵守协议?

有没有办法做这样的事情(下面不起作用):

@protocol ElementPicker <UIViewController>

- (id)initWithFile:(NSFileWrapper *)file andInfo:(NSString *)info;

@property (nonatomic, weak) NSObject<ElementPickerDelegate> *delegate;
@end
Run Code Online (Sandbox Code Playgroud)

那么实现"ElementPicker"的对象必须继承UIViewController

objective-c uiviewcontroller ios objective-c-protocol

0
推荐指数
1
解决办法
2198
查看次数

每次登录后启动程序

我试图在互联网上找到这个,没有运气.我想在每次登录后启动程序(LoginUI.exe).是否可以检测用户何时锁定了他/她的计算机(Winkey + L)然后启动我的程序?如果这不可能,那么一旦用户刚刚登录,有没有办法检测?

c# windows login winforms

0
推荐指数
1
解决办法
1236
查看次数

选择表中每行的第二个单元格

我有一个表,我能够成功选择每一行的第一个单元格,但我不能使用相同的代码来选择每一行的第二个单元格.请帮我选择并更改每行第二个单元格的CSS.我不使用普通CSS的原因是因为这些是表格的未来单元格.

$("#part_rows tr td:first-child").css("width","150px");
Run Code Online (Sandbox Code Playgroud)

上面的工作正常,但以下不起作用.

$("#part_rows tr td:second-child").css("width","150px");
Run Code Online (Sandbox Code Playgroud)

javascript css jquery

-2
推荐指数
1
解决办法
2196
查看次数