小编Pet*_*ete的帖子

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

PKCS1-padding/RSA加密ios objc和java之间的区别

我正在为ios和Android开发应用程序.我对加密任务比较陌生,在过去的3天里,我不停地撞墙,因为我无法运行RSA加密.

两个客户端都从Java服务器接收公钥.在android我有(显然,因为它几乎与服务器端的代码相同)没有麻烦,但ios部分似乎根本不兼容.我想用公钥加密一小段数据(aes密钥),这就是我在Java中的做法:

try {
    String publickey  = "MCwwDQYJKoZIhvcNAQEBBQADGwAwGAIRAK+dBpbOKw+1VKMWoFxjU6UCAwEAAQ==";
    byte[] bArr = Crypto.base64Decode(publicKey, false);
    KeyFactory keyFactory = KeyFactory.getInstance("RSA", "BC");
    EncodedKeySpec publicKeySpec = new X509EncodedKeySpec(publicKey);
    PublicKey publicKey = keyFactory.generatePublic(publicKeySpec);

    Cipher cipher = Cipher.getInstance("RSA/NONE/PKCS1Padding", "BC");
    cipher.init(1,publicKey);
    int cipherBlockSize = cipher.getBlockSize();
    ByteArrayOutputStream bArrOut = new ByteArrayOutputStream();
    bArrOut.flush();
    int pos = 0;
    Log.i("ContentBufferLength", contentBuffer.length+"");

    while (true) {
        if (cipherBlockSize > contentBuffer.length - pos) {
            cipherBlockSize = contentBuffer.length - pos;
        }
        Log.i("CipherBlockSize", cipherBlockSize+"");
        byte[] tmp = cipher.doFinal(contentBuffer, pos, cipherBlockSize);
        bArrOut.write(tmp);
        pos += cipherBlockSize;
        if (contentBuffer.length <= …
Run Code Online (Sandbox Code Playgroud)

java encryption android rsa ios

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

Golang + Angular

我开始尝试使用Go和Angular,但我有一个奇怪的问题.我想我只是错过了一个小细节,但我无法理解.

我正在使用https://github.com/julienschmidt/httprouter作为Go的路由器...现在使用Angular,我应该能够将URL复制并粘贴到浏览器中,Angular应该处理相应的路由,对吧?

我有一个"/ login"路线.如果通过前端访问路线,哪个有效...但如果我在浏览器中键入"mypage.com/login",则不会获得404.

Go routing基本上只是做

router.NotFound = http.FileServer(http.Dir("./public"))
Run Code Online (Sandbox Code Playgroud)

哪个适用于"/"路由,但不适用于其他任何内容.这似乎是正确的.但是如何正确设置路由,以便Angular处理所有路由?

routing go angular

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

为什么$ _SESSION在PHP 7中通过引用传递?

我正在从PHP 5.6升级到PHP 7并且出现了一个奇怪的问题.

    <?php
    session_start();
    $_SESSION['test'] = true;
    $var = $_SESSION;
    session_unset();
    print_r($var);
Run Code Online (Sandbox Code Playgroud)

PHP 5.6输出:

Array
(
    [test] => 1
)
Run Code Online (Sandbox Code Playgroud)

PHP 7输出:

Array
(
)
Run Code Online (Sandbox Code Playgroud)

我认为这是因为$_SESSION通过引用传递,但为什么?

php session php-7

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

"橡皮筋"会解决多人插值口吃问题吗?

我用UDP编写了多人Pong.我正在使用插值和外推,以便在客户端上创建平滑的效果.

有用.然而,球中有一些不断的口吃.每次收到新数据包时它会向前跳一小部分.它看起来有点滞后,但它是可玩的.

必须有一种方法让游戏看起来更顺畅.我读过有关橡皮筋的文章.离开这里最好的方法是什么?

我希望能够很好地回答我的问题的人会找到它.

更新

根据Ivan的要求,这是ping时间的图表.但是,我确实认为客户端平滑代码中存在问题.

在此输入图像描述

java networking interpolation physics multiplayer

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

PHP被称为"二进制安全"的功能是什么?这些"非二进制安全"函数向哪些库移除字符串?为什么?

我正在使用Windows 10 Home Single Language Edition,它是我机器上的64位操作系统.

我安装了最新版本的XAMPP,它在我的机器上安装了PHP 7.2.7.

我根据PHP手册中的摘录问这个问题:

PHP中的字符串实现为字节数组和表示缓冲区长度的整数.它没有关于这些字节如何转换为字符的信息,将该任务留给程序员.字符串可以组成的值没有限制; 特别是,字符串中的任何地方都允许使用值为0的字节("NUL字节")(但是,本手册中称为"二进制安全"的一些函数)可能会将字符串移交给忽略数据后的数据库. NUL字节.)

我非常理解PHP中二进制安全函数和非二进制安全函数之间的区别.我心中怀疑.请以一对一的方式回答它们,并附上适当的解释和适当的例子.

  • PHP中是否存在"非二进制安全"和"二进制安全"函数的现象,因为整个PHP解析器都是用C语言编写的?
  • 在处理包含任何值的字符串(包括NUL字节)时,C和PHP之间有什么区别?
  • 我想要PHP中的完整功能列表,这些功能是"非二进制安全的"并且是"二进制安全的".
  • 是"非二进制安全"和"二进制安全"只适用于操纵在串并不能适用于其他类型的PHP处理PHP函数功能的特点呢?
  • 为什么非二进制安全函数将字符串移交给库?
  • 只有当它们处理的字符串包含NUL字节时,非二进制安全函数才会将字符串移交给库吗?
  • 那些"非二进制安全"函数将这些字符串移交给哪些库?
  • 这些库如何处理从"非二进制安全"函数接收的字符串?
  • 在将包含NUL字节的字符串移交给某个库之后,"非二进制安全"函数是否像"二进制安全"函数一样工作?

php string php-internals

10
推荐指数
2
解决办法
318
查看次数

在Doctrine ORM中是否可以将LIMIT添加到UPDATE查询中?

我正在使用Doctrine 2.5.x,并且在使LIMIT子句适用于UPDATE查询时遇到问题。它总是更新所有匹配的记录(即似乎忽略LIMIT子句)。

setMaxResults() 与UPDATE查询一起使用时似乎无效。

作为一种快速的解决方法,我正在使用本机MySQL查询,但这并不是最佳解决方案。

我尝试了以下示例,但没有一个起作用:

具有LIMIT的学说更新查询

https://recalll.co/app/?q=doctrine2%20-%20Doctrine%20update%20query%20with%20LIMIT

QueryBuilder与setMaxResults()(不起作用):

$qb = $em->createQueryBuilder();

$query = $qb->update('\Task\Entity', 't')
    ->set('t.ClaimedBy', 1)
    ->where('t.Claimed IS NULL')
    ->getQuery();
$query->setMaxResults(20);

$this->log($query->getSQL());
Run Code Online (Sandbox Code Playgroud)

希望有人可以找到比本地查询更好的解决方案。它剥夺了ORM的全部优势。

甚至可以在UPDATE语句中使用LIMIT子句吗?

php doctrine symfony doctrine-orm

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

为什么不能在Doctrine实体中使用公共属性?

假设我在PHP中有一个非常简单的CRUD系统来管理数据库。说它拥有一个产品清单。使用Doctrine ORM,我想查询数据库并查看/编辑/添加记录。根据入门手册,

创建实体类时,所有字段都应受保护或为私有字段(非公共字段,每个字段都应具有getter和setter方法($ id除外)。mutator的使用使Doctrine可以挂接到以实体#field = foo直接设置值的方式无法操纵实体的调用。

这是提供的示例:

// src/Product.php
class Product
{
    /**
     * @var int
     */
    protected $id;
    /**
     * @var string
     */
    protected $name;

    public function getId()
    {
        return $this->id;
    }

    public function getName()
    {
        return $this->name;
    }

    public function setName($name)
    {
        $this->name = $name;
    }
}

// Recording a new title
$product->setName("My new name");
$db->persist($product);
$db->flush();

// Echoing the title
echo $product->getName();
Run Code Online (Sandbox Code Playgroud)

但是,这似乎过于复杂。假设我没有必要像实体手册中所述去处理实体的调用。我可以使这段代码更短并执行以下操作:

// src/Product.php
class Product …
Run Code Online (Sandbox Code Playgroud)

php doctrine-orm

5
推荐指数
2
解决办法
1522
查看次数

是什么导致Spark Kafka Connector中的“未知的解析器为null”?

我是Spark的新手,我在本地启动了Zookeeper,kafka(0.10.1.1),同时也启动了具有一名管理员和2名工人的独立(2.2.0)。我的本地scal版本是2.12.3

我能够在spark上运行wordcount,并使用kafka控制台生产者和使用者从kafka主题发布/订阅消息。

我的问题是:每当我使用spark-submit --packages添加kafka软件包时,我都会

...
:: problems summary ::
:::: ERRORS
    unknown resolver null

:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
:: retrieving :: org.apache.spark#spark-submit-parent
    confs: [default]
    0 artifacts copied, 13 already retrieved (0kB/9ms)
...
Run Code Online (Sandbox Code Playgroud)

即使我根本不使用kafka连接器。详细日志如下:

命令

$SPARK_HOME/bin/spark-submit --packages org.apache.spark:spark-streaming-kafka-0-10_2.11:2.2.0 --master spark://TUSMA06RMLVT047:7077 build/libs/sparkdriver-1.0-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)

日志

Ivy Default Cache set to: /Users/v0001/.ivy2/cache
The jars for the packages stored in: /Users/v0001/.ivy2/jars
:: loading settings :: url = jar:file:/usr/local/Cellar/apache-spark/2.2.0/libexec/jars/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
org.apache.spark#spark-streaming-kafka-0-10_2.11 added as a dependency
:: resolving dependencies :: org.apache.spark#spark-submit-parent;1.0
    confs: [default] …
Run Code Online (Sandbox Code Playgroud)

java apache-kafka apache-spark spark-streaming spark-submit

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

如何在PHP中解密由SQL Server的EncryptByPassPhrase()加密的字符串?

我有一个加密的字符串及其密钥,它是通过SQL Server使用“ EncryptByPassPhrase”创建的,如何在PHP中对其进行解密?

我已经阅读了“ EncryptByPassPhrase”的文档,该文档指出这是128长度的三重DES加密。我尝试对PHP进行3DES解密,但未返回预期的输出。

MS SQL中的加密是通过

declare @encrypt varbinary(200) 
select @encrypt = EncryptByPassPhrase('key', 'taskseq=10000&amt=200.5' )
select @encrypt 
Run Code Online (Sandbox Code Playgroud)

我在PHP中将其解密如下:

    function decryptECB($encrypted, $key) {
       $iv_size = mcrypt_get_iv_size(MCRYPT_3DES, MCRYPT_MODE_ECB);
       $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
       // decrypting
       $stringText = mcrypt_decrypt(MCRYPT_3DES, $key, $encrypted, 
       MCRYPT_MODE_ECB, $iv);

       return $stringText;
    }
Run Code Online (Sandbox Code Playgroud)

php sql t-sql sql-server encryption

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

遍历 Nodejs MySQL 结果集中的字段

我是一个相对节点新手(老派程序员)

我有工作代码来获取结果集并解析行。我正在使用 felx 的 node-mysql 驱动程序。专门打印列并不难。

connection.query('SELECT * FROM Company', function(err, rows, fields) {
    if (err) throw err;

    for (var i = 0; i < rows.length; i++) {
        result = "";
       result = result + ('| ' + rows[i].name + ' | ' + rows[i].address_zip);
        theEmail = theEmail + result + "<BR>";
}
Run Code Online (Sandbox Code Playgroud)

我真正想做的是循环遍历字段而不必命名它们......我的直觉告诉我这将是 rows[i].[j]......或类似的东西。

这可能吗?

mysql json multidimensional-array node.js

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

如何让 Twig 忽略用于 Polymer 的花括号?

我正在尝试在 Twig 模板中使用 Polymer。但是我在绑定数据时遇到了这个问题。我无法使用 {{ }},因为 Twig 将其视为其回声分隔符。

我们如何让 Twig 忽略这段代码中的花括号?

  <iron-ajax auto url="http://demo.vaadin.com/demo-data/1.0/people" handle-as="json" last-response="{{peopleResponse}}"></iron-ajax>
  <vaadin-grid items="{{peopleResponse.result}}">
    <table>
      <colgroup>
        <col name="firstName"/>
        <col name="lastName"/>
        <col name="email"/>
        <col name="address.phone"/>
      </colgroup>
    </table>
  </vaadin-grid>
Run Code Online (Sandbox Code Playgroud)

php symfony twig polymer

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