小编kid*_*ose的帖子

通过使用java.util.Date可能出现下溢错误

这段代码:

package test;

import java.util.Date;

public class DateUnderflow {

    public static void main(String[] args) {
        Long timestamp = -8120649749785140250L;
        System.out.println(new Date(timestamp));
    }
}
Run Code Online (Sandbox Code Playgroud)

产生以下输出:

"Sat Aug 03 10:00:59 CET 257325894"
Run Code Online (Sandbox Code Playgroud)

怎么会?没有例外的下溢?

Doc说,date参数Date(long date)是自纪元以来的毫秒数,所以我有点惊讶地发现自己远未来......

我的设置:

  • Linux薄荷17.1
  • Eclipse Luna服务版本1a(4.4.1)
  • java7-OpenJDK的,AMD64

java java.util.date

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

使用来自certstore的客户端证书的PowerShell HTTPS GET

我正在尝试找到使用客户端证书通过HTTPS检查Web内容的简便方法。我有VBScript,其中定义了客户端证书,跳过了服务器证书并定义了我要搜索的内容(字符串“ running”)。我的意思是将脚本重写为PowerShell。

这是VBScode:

device = "10.10.10.10"
link = "5001/test"
Set Http = CreateObject("WinHttp.WinHttpRequest.5.1")
Http.SetClientCertificate "LOCAL_MACHINE\MY\test"
Http.Option(4) = 256 + 512 + 4096 + 8192 
Http.Open "GET", "https://" & device & ":" & link, false
Http.Send
output = Http.ResponseText
If InStr(1,output,"running") Then
wscript.echo "OK"
Else
wscript.echo "Error"
End If
Set Http = Nothing
Run Code Online (Sandbox Code Playgroud)

这是获取HTTP Web内容(而不是https)的Powershell语法:

$page = (New-Object System.Net.WebClient).DownloadString("http://10.10.10.10:5001/test")
"$page"
Run Code Online (Sandbox Code Playgroud)

这是使用.CRT文件获取HTTPS竞争的Powershell语法(但不是来自CERTSTORE)

[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
$cert = [System.Security.Cryptography.X509Certificates.X509Certificate2]::CreateFromCertFile("C:\Cert\test.crt")
$url = "https://10.10.10.10:5001/test"
$web = [System.Net.WebRequest]::Create($url)
$web.ClientCertificates.Add($Cert)
Run Code Online (Sandbox Code Playgroud)

这是我最新获得网络竞争的尝试。没有成功

#ignore untrusted certificate
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true} …
Run Code Online (Sandbox Code Playgroud)

powershell https get certificate

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

重新采样scala,功能方式

我有一个样本数组D,我想用替换来统一重新采样以构造一个新数组.程序解决方案非常简单,但我想知道是否有人对如何做到"功能方式"有一些想法?(我只是选择了Scala和函数式编程)

一个功能实现来证明我的意思:

val D = Array(0,1,2,3,4)  

val R = new Random();                           
var ResampledD = Array[Int]();           
var i = 0;                                      
while (i < D.length) {
    ResampledD = ResampledD :+ D(R.nextInt(D.length));
    i = i + 1;
} 
ResampledD
> res0: Array[Array[Int]] = Array(2, 2, 1, 3, 2)
Run Code Online (Sandbox Code Playgroud)

functional-programming scala resampling

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

登录脚本使用机器密码为kinit在登录时获取票证

我同步了我的密码/密码用于登录我的机器,解锁我的ssh密钥文件(~/.ssh/id_rsa,参见man ssh-keygen)和kerberos.当我登录时,我输入一次密码来访问我的本地计算机帐户,作为奖励我的ssh密钥文件也被解锁.

我还想自动化我的kerberos身份验证,它也使用相同的密码.基本上,我想要一种安全的方法来实现将它放在我的'〜/ .bash_profile`中的相同效果:

# PASSWORD SHOULD NEVER BE HARDCODED - FOR EXPLANATION PURPOSE ONLY
PASSWORD="qwerty" # NEVER DO THIS!!!
echo "$PASSWORD" | kinit -u $KRBUSR
Run Code Online (Sandbox Code Playgroud)

有什么建议?关于如何解锁密钥文件的见解?

linux kerberos ssh-keys .bash-profile

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