小编Caf*_*ion的帖子

节点加密 diffieHellman.setPrivateKey()

我一直在使用 Node 中的加密库来进行公钥交换。到目前为止,我刚刚.getDiffieHellman('modp5')为每个新连接生成一个新的公钥/私钥。此方法非常适合计算用于 AES 加密的秘密。

但是,我希望能够将私钥保存到文件中,然后在下次执行时加载它。似乎执行此操作的方法是.getPrivateKey()then.setPrivateKey().setPrivateKey()crypto.createDiffieHellman由 生成的类上使用.getDiffieHellman('modp5')不起作用。这实际上在文档中有说明:

返回的对象模仿上面 crypto.createDiffieHellman() 创建的对象的接口,但不允许更改密钥(例如使用 diffieHellman.setPublicKey() )。

知道这一点,如果我使用以下代码生成了私钥:

var crypto = require('crypto');
var Key = crypto.getDiffieHellman('modp5');
Key.generateKeys();
var PrvKey = Key.getPrivateKey();
save_to_file(PrvKey);
Run Code Online (Sandbox Code Playgroud)

我如何在以后加载相同的私钥?

var crypto = require('crypto');
var PrvKey = load_from_file();
var Key = crypto.createDiffieHellman(prime, [encoding]);
Key.setPrivateKey( PrvKey )
Run Code Online (Sandbox Code Playgroud)

我查看了加密文档中指定的RFC2412,发现第 5 组的素数列出为:

2^1536 - 2^1472 - 1 + 2^64 * { [2^1406 圆周率] + 741804}

241031242692103258855207602219756607485695054850245994265411 694195810883168261222889009385826134161467322714147790401219 6 50364895705058263194273070680500922306273474534107340669624 601458936165977404102716924945320037872943417032584377865919 8143 …

javascript cryptography public-key-encryption node.js node-crypto

5
推荐指数
0
解决办法
933
查看次数

Node.JS叉管

我试图根据此stackoverflow问题上发布的示例将node.js模块分叉为子进程.fork本身可以工作,但我遇到的问题是该节点正在尝试添加.on('data')和填充.on('exit')之前fork('./DaemonSerial.js'tChild

var fork = require('child_process').fork;

// Start Serial Daemon/s
var tChild = fork('./DaemonSerial.js', [], {
  stdio: 'pipe'
});
tChild.stdin.on('data', function(data) {
  // output from the child process
  console.log("./DaemonSerial.js >>> " + data)
 });
EdgeMaster.Children[tChild.pid] = tChild;
tChild.on('exit', function(d) {
    console.log("./DaemonSerial.js >>> "+ tChild.pid + ' Exited:'+ d);
    delete EdgeMaster.Children[tChild.pid]
 });
Run Code Online (Sandbox Code Playgroud)

我也在其他地方遇到过这个问题,并且我确定应该有一种强制执行某种do THIS then THAT功能的方法,即使函数本身没有回调也是如此.child_process.fork(modulePath, [args], [options])nodejs.org/api/child_process.html上没有列出回调.

想法?

编辑:我写了一个新的脚本,forktest.js以排除我的脚本的其他部分可能导致问题的任何可能性.forktest.js完全如下:

var fork = require('child_process').fork; …
Run Code Online (Sandbox Code Playgroud)

javascript node.js

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

在针对KubernetesPodOperator的DAG设置中我做错了什么

我在此博客文章中找到了以下Airflow DAG :

from airflow import DAG
from datetime import datetime, timedelta
from airflow.contrib.operators.kubernetes_pod_operator import KubernetesPodOperator
from airflow.operators.dummy_operator import DummyOperator


default_args = {
    'owner': 'airflow',
    'depends_on_past': False,
    'start_date': datetime.utcnow(),
    'email': ['airflow@example.com'],
    'email_on_failure': False,
    'email_on_retry': False,
    'retries': 1,
    'retry_delay': timedelta(minutes=5)
}

dag = DAG(
    'kubernetes_sample', default_args=default_args, schedule_interval=timedelta(minutes=10))


start = DummyOperator(task_id='run_this_first', dag=dag)

passing = KubernetesPodOperator(namespace='default',
                          image="Python:3.6",
                          cmds=["Python","-c"],
                          arguments=["print('hello world')"],
                          labels={"foo": "bar"},
                          name="passing-test",
                          task_id="passing-task",
                          get_logs=True,
                          dag=dag
                          )

failing = KubernetesPodOperator(namespace='default',
                          image="ubuntu:1604",
                          cmds=["Python","-c"],
                          arguments=["print('hello world')"],
                          labels={"foo": "bar"},
                          name="fail",
                          task_id="failing-task",
                          get_logs=True,
                          dag=dag
                          ) …
Run Code Online (Sandbox Code Playgroud)

kubernetes airflow

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

ModuleNotFoundError: 没有名为“脚本”的模块

我曾试图安装PYAHK通过pip install pyahk以及python setup.py install

# pip --version
pip 9.0.1 from c:\python36\lib\site-packages (python 3.6)

# python --version
Python 3.6.1
Run Code Online (Sandbox Code Playgroud)

这两个错误都带有以下消息:

Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "C:\Users\ca\AppData\Local\Temp\pip-build-as2lv10i\pyahk\setup.py", line 3, in <module>
    import ahk
    File "C:\Users\ca\AppData\Local\Temp\pip-build-as2lv10i\pyahk\ahk\__init__.py", line 7, in <module>
    from script import Function, Script
ModuleNotFoundError: No module named 'script'
Run Code Online (Sandbox Code Playgroud)

但是......有问题的模块.\ahk\script.py确实存在

PYAHK
?   .hgignore
?   .hgtags
?   .hg_archival.txt
?   LICENSE.txt
?   pylintrc
?   README.rst
?   runtests.py
?   setup.py …
Run Code Online (Sandbox Code Playgroud)

python pip

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

Kineticjs类层次结构澄清

在回顾了Kineticjs文档之后,我提出了以下建议

  • Kinetic.Node - 节点是可以转换,分层并具有绑定事件的实体.
  • Kinetic.Shape (节点) - 形状是原始对象,如矩形,圆形,文本,线条等.
  • Kinetic.Container (Node) - 容器用于包含节点或其他容器

  • Kinetic.Stage (容器(节点)) - 一个阶段用于包含多个层add(Layer)

  • Kinetic.Layer (容器(节点)) - 图层与自己的canvas元素绑定,用于包含组或形状add(Node)
  • Kinetic.Group (容器(节点)) - 组用于包含形状或其他组.add(Node)
  • Kinetic.BaseLayer (容器(节点)) - ???
  • Kinetic.FastLayer (容器(节点)) - 用于不需要用户交互的图层(更新感谢markE)

  • Kinetic.Collection (Array) - 此类与Kinetic.Container#get一起使用

什么是BaseLayer'FastLayer'用于确切?在文档中FastLayer有完全相同的描述,Layer并且BaseLayer只是说它是一个构造函数.

在其中一个提交注释中,推断出FastLayer不必删除hit canvas...我猜这是因为它没有一个因此使它更快?

关于这两个类的作用以及如何有效地使用它们的一些说明将不胜感激.

编辑:更新问题以反映markE的输入,任何人都有洞察力BaseLayer

javascript kineticjs

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