V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  cbasil  ›  全部回复第 1 页 / 共 7 页
回复总数  130
1  2  3  4  5  6  7  
很久之前办的电信星卡,19 一个月。还有话费充 100 送 100 的活动
@amoSjiang 看是什么专业,有些专业软件是需要显卡支撑的,而且轻薄本散热不行,cpu 是残血,温度一高就降频。使用体验肯定没游戏本好。
@amoSjiang 如果非要买 windows ,建议买联想拯救 Y7000p 或者 thinkbook 系列
目前建议买 mac,一是操作使用简单,二是颜值高有品牌加成,三是打不了游戏,专注于学习。四是续航高、轻便携带方便。
84 天前
回复了 Amose2024 创建的主题 职场话题 是我老了,还是新同事很牛?
去年年底公司来了一个新同事,嫌我们项目中写的数据库工具类太原始了,这个文件是项目通用的数据增删查改类,没用 orm 那一套。而是拼接成 sql 语句执行。他改完了之后因为某些原因离职了。后面又招了一位新同事,继续负责这个项目,有一天,他一脸便秘的表情跟我说:哥,这个项目数据更新有问题,用 sql 能更新数据,但是用 orm 就无法更新成功,而且还不报错。我拉取代码看了他写的更新数据的代码,看起来没问题,运行也正常。但就是数据没更新。我一开始怀疑是 orm 限制字段修改了,后面一看配置也没有,最后打断点发现 update 没有执行。再一下数据模型继承的工具类,好家伙,之前那个家伙重写了一堆方法,里面就有 update 。原因是这个文件继承了 orm,导致运行时直接覆盖了 orm 的 uodate 方法。
@gam2046 vultr 不便宜,而且速度慢,racknerd 有 10 刀一年的。
95 天前
回复了 cbasil 创建的主题 Go 编程语言 golang 有什么好用的管理后台吗?
@ziyeziye dcat 开发的后台确实好看,而且开发速度快。
95 天前
回复了 cbasil 创建的主题 Go 编程语言 golang 有什么好用的管理后台吗?
@ziyeziye dcat 现在好像停止更新了
95 天前
回复了 momowei 创建的主题 计算机 帮忙看看这个 diy 装机配置搞开发怎样
不打游戏,买 mac mini m4,现在叠加教育补贴 3000 就能拿下,日常开发够用。
211 天前
回复了 cbasil 创建的主题 Mac mini 京东早上 8 点放货,终于抢到 mac mini 4
@dropice7777777 有补贴
211 天前
回复了 cbasil 创建的主题 Mac mini 京东早上 8 点放货,终于抢到 mac mini 4
@zhlxsh 只有几个省份有补贴,而且下单地址必须是那几个地区。有时时候预约显示的也是原价,实际结算就是补贴后的价格。
无脑 modelY 就行了,路上见的最多的就是 modelY 。而且出问题,全国网友帮你骂特斯拉。
219 天前
回复了 cbasil 创建的主题 PHP 与银行对接 sm4 国密算法
@ntedshen RSA 也是一个大坑,之前对接的一个项目,接口用到私钥签名、公钥验签加上公钥加密、私钥解密。双方交换公钥。折腾了好久,发现 rsa 加密要分段加密。RSA 密钥长度 1024bit ,加密的时候 117 个字符加密一次,然后把所有的密文拼接成一个密文;解密的时候需要 128 个字符解密一下,然后拼接成数据。具体可以看看这篇文章 https://www.cnblogs.com/meetuj/p/14954533.html
不同语言的加解密处理确实太麻烦了,尤其是对方一句话,我们用的是默认的加密方式。你们自己实现就好了。代码也不给,给一串加密前和加密后的参数。你自己慢慢去试。成功了就是精诚所至金石为开。
219 天前
回复了 cbasil 创建的主题 PHP 与银行对接 sm4 国密算法
@ca2oh4 我当时也考虑用 golang 写一个脚本,然后 php 通过 http 调用。不过后面解决了就不用了。这是当时写的 golang 案例

```golang
package main

import (
"bytes"
"crypto/cipher"
"encoding/hex"
"fmt"

"github.com/tjfoc/gmsm/sm4"
)

// PKCS5Padding 使用 PKCS5 填充
func PKCS5Padding(src []byte, blockSize int) []byte {
padding := blockSize - len(src)%blockSize
padtext := bytes.Repeat([]byte{byte(padding)}, padding)
return append(src, padtext...)
}

// PKCS5UnPadding 去除 PKCS5 填充
func PKCS5UnPadding(src []byte) []byte {
length := len(src)
unpadding := int(src[length-1])
return src[:(length - unpadding)]
}

// SM4 CBC 模式加密
func sm4CBCEncrypt(key, plaintext, iv []byte) ([]byte, error) {
block, err := sm4.NewCipher(key)
if err != nil {
return nil, err
}

plaintext = PKCS5Padding(plaintext, block.BlockSize())
ciphertext := make([]byte, len(plaintext))
mode := cipher.NewCBCEncrypter(block, iv)
mode.CryptBlocks(ciphertext, plaintext)
return ciphertext, nil
}

// SM4 CBC 模式解密
func sm4CBCDecrypt(key, ciphertext, iv []byte) ([]byte, error) {
block, err := sm4.NewCipher(key)
if err != nil {
return nil, err
}

plaintext := make([]byte, len(ciphertext))
mode := cipher.NewCBCDecrypter(block, iv)
mode.CryptBlocks(plaintext, ciphertext)
plaintext = PKCS5UnPadding(plaintext)
return plaintext, nil
}

func main() {
key, _ := hex.DecodeString("key") // 16 字节的十六进制密钥
iv, _ := hex.DecodeString("iv") // 16 字节的 IV
plaintext := []byte("This is a secret message.")

// 加密
ciphertext, err := sm4CBCEncrypt(key, plaintext, iv)
if err != nil {
fmt.Println("Encryption error:", err)
return
}
fmt.Printf("Ciphertext (hex): %s\n", hex.EncodeToString(ciphertext))
// 解密
decrypted, err := sm4CBCDecrypt(key, ciphertext, iv)
if err != nil {
fmt.Println("Decryption error:", err)
return
}
fmt.Printf("Decrypted text: %s\n", decrypted)
}
```
219 天前
回复了 cbasil 创建的主题 PHP 与银行对接 sm4 国密算法
@bagel 银行加密的 IV 就是默认填 0 生成的,你如果用随机数生成 iv ,解密肯定有问题。至于全零 IV 生成,用 str_repeat("\0", 16)更简洁更明确。
智驾还没有 acc 安全,至少 acc 不会无故退出。
之前在深圳城中村租房住。用啥药都不管用,因为蟑螂会从各种地方爬进来。后面改用蟑螂屋,在它必经之路放几个。一晚上就能收获上百只小强。
referer 也可以伪造
1  2  3  4  5  6  7  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2505 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 31ms · UTC 01:52 · PVG 09:52 · LAX 18:52 · JFK 21:52
Developed with CodeLauncher
♥ Do have faith in what you're doing.