JAVA和IOS对接RSA加密问题

公司开发IOS APP,跟JAVA后台对接。在加密方面,使用的是RSA。在JAVA端生成的公钥和私钥,通过BASE64转成字符串。然后在IOS端,如果直接拿着这个转化的字符串密钥(通过BASE64解密后)去做RSA加密的话,这边JAVA端解密会失败。所以,请问下,在密钥方面应该怎么处理呢?JAVA端生成的密钥怎样处理给到IOS端才会成功?谢谢!

3个回答

Java和android及iOS对接RSA加密经验
IOS 与JAVA RSA加密解密
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

解密失败,你得查下一下原因。思路没问题。JDK不同版本对Base64的处理不一样,需要注意;Http传输中对特殊字符需要转译,也要注意。建议你前后台联调一下,两端分别对同一个明文加密解密,看看得到的结果是否一致。

new03
new03 嗯嗯 多谢
大约 4 年之前 回复

我只跟你说一句,ios用的证书格式跟你们java不一样,ios要用DER,其他的我已经不想说了。图片说明图片说明图片说明

哦,对了,ios只支持那个好像叫x501的openssl标准。你是用openssl的哪种标准生成的证书,这非常重要。不同的标准,肯定是不能通的。希望对你有帮助。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
求帮助!ios用RSA加密和解密!在线等

用 oc 实现RSA 加密和解密 在线等 谢谢

C# RSA 和 java 互通 C# 将java 的私钥 和 明文 加密

C# 将java 的私钥 和 明文 加密 C# 将java 的私钥 和 明文 加密 C# 将java 的私钥 和 明文 加密 C# 将java 的私钥 和 明文 加密 C# 将java 的私钥 和 明文 加密 C# 将java 的私钥 和 明文 加密

ios RSA加密解密,后台只传一个公钥

如题,后台用java写的,写的时候没考虑iOS,现在后台不想改,就想这样,各位大神怎么实现这个?

关于IOS的RSA加密问题

由于公钥是服务器传下来的NSString类型,由于一些原因,不能使用证书加密,不能使用openssl库进行加密,要怎么加密好???急求,找了好久了,也看到有一些提问的,解决方法都不行。。。 最好有代码可以看。。。

我可以用Java进行RSA加密但是用PHP解密吗?

<div class="post-text" itemprop="text"> <p>Can I RSA-encrypt in J2ME or J2SE, and decrypt in PHP?</p> <p>I assume RSA is a specification, and has nothing to do with the languages.</p> </div>

iOS在RSA加密解密和签名的时候已经生成密钥、摘要和密文。向服务器请求为何后台没有反应

![图片说明](https://img-ask.csdn.net/upload/201512/24/1450949322_580072.jpg)是RSA加密签名这里的问题吗

JAVA里的rsa公钥加密128位的明文加出来的结果一定是512位的密文吗?可以加出来256位的密文么?

1.明文:[1111111111111111 ] 补空格至128位,rsa公钥加密后: 公钥为:-----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDZWHcxw/xXAB/8bquCnLrQ6QYafG9bcZZ4mq+A6GBn3QtW5Sia3JPERW0qD62/4PuNOXqKTj3cw4RnYYr29gZXv/F8DfmY1UpfQkJxLC9az4f9eEiuEm5axMzpl5V4BNpnVgnmDTRAv45ZKj+V6k9TZ8rVVSQqTEGLTQkpU38QIDAQAB -----END PUBLIC KEY----- 密文为:B4671AABC963BAEFED0B43E0704090F018EE19CB09172E74DAC27130A44AFF6060C118B79369E682C05B88404882B39374A0BB2ECEB8DAAA53C3F3F51B51D796540316BC2D89DD320DADBFD74B62A27C30BC162B936DFE16894E0F825CD6337D1E3F550685C901422355AB94EB5152DB305617155BF463D8CE98162D2A456351 试了各种方法,只有填充方式为RSA/ECB/nopadding时,每次加密的结果才保持一致,其他情况,每次加密的结果都不同; 由于rsa加密在明文大小超过117时会分段加密,所以我现在128加出来的密文是512位的, 请问各位大佬,怎么才能加出来上述miwen

java产生RSA公钥,C++进行加密问题

如何将java生产的RSA公钥传递给C++,C++采用的加密函数是RSA_public_encrypt。是否需要将java产生的公钥进行什么格式转换?

关于RSA.JS和java的问题

![图片说明](https://img-ask.csdn.net/upload/201709/04/1504511259_240109.png) ![图片说明](https://img-ask.csdn.net/upload/201709/04/1504511247_290224.png) 为啥我前端用RSA.JS加密,后台解密出来的数据前面多了一堆字符![图片说明](https://img-ask.csdn.net/upload/201709/04/1504511126_843523.png)

RSA在Java和Go之间进行加密和解密

<div class="post-text" itemprop="text"> <p>In java I encrypt a string by RSA : "Hello,I am plaintext string!@sina.com" then get:</p> <p><code>kkkHf5QSXx8aDadk66AOysmV8LOi4vWUANal+7KV6va/5ZR7PSWGRS5bzbK4vMyK9FA5CLQolr2N B6ouPNWpgq3Af7Pn/f45+pDtKRsBLX8+q/Mw7TOYR525e7nVePDBLM2wLQZ4Gh5QMQzEI3Me3Zc3 030jRg0gEG13N/1EzMo=</code></p> <p>But I tried many methods and couldn't decrypt it in go. What's the problem?</p> <p>Any help will be appreciated, thanks.</p> <p>Here is my code:</p> <p>java:</p> <pre><code>public static void main(String[] args) throws Exception { String pubKey_from_go="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDZsfv1qscqYdy4vY+P4e3cAtmv"+ "ppXQcRvrF1cB4drkv0haU24Y7m5qYtT52Kr539RdbKKdLAM6s20lWy7+5C0Dgacd"+ "wYWd/7PeCELyEipZJL07Vro7Ate8Bfjya+wltGK9+XNUIHiumUKULW4KDx21+1NL"+ "AUeJ6PeW+DAkmJWF6QIDAQAB"; String plainText = "Hello,I am plaintext string!@sina.com"; String encryptString=encByGoPubKey(pubKey_from_go,plainText); } public static String encByGoPubKey(String pubkey_from_go,String plainText) throws Exception { Cipher cipher = Cipher.getInstance("RSA");//Cipher.getInstance("RSA/ECB/PKCS1Padding"); byte[] plainTextBytes = plainText.getBytes(); PublicKey pubkey_go=getPublicKey(pubkey_from_go); cipher.init(Cipher.ENCRYPT_MODE, pubkey_go); byte[] enBytes = cipher.doFinal(plainTextBytes); String encryptString = (new BASE64Encoder()).encode(enBytes); return encryptString; } public static PublicKey getPublicKey(String key) throws Exception { byte[] keyBytes; keyBytes = (new BASE64Decoder()).decodeBuffer(key); X509EncodedKeySpec keySpec = new X509EncodedKeySpec(keyBytes); KeyFactory keyFactory = KeyFactory.getInstance("RSA"); PublicKey publicKey = keyFactory.generatePublic(keySpec); return publicKey; } </code></pre> <p>Go:</p> <pre><code>import ( "crypto/rand" "crypto/rsa" // "crypto/sha1" "crypto/x509" "encoding/base64" "encoding/pem" "errors" // "flag" "fmt" "github.com/astaxie/beego" ) var publicKey = []byte(` -----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDZsfv1qscqYdy4vY+P4e3cAtmv ppXQcRvrF1cB4drkv0haU24Y7m5qYtT52Kr539RdbKKdLAM6s20lWy7+5C0Dgacd wYWd/7PeCELyEipZJL07Vro7Ate8Bfjya+wltGK9+XNUIHiumUKULW4KDx21+1NL AUeJ6PeW+DAkmJWF6QIDAQAB -----END PUBLIC KEY----- `) var privateKey = []byte(` -----BEGIN RSA PRIVATE KEY----- MIICXQIBAAKBgQDZsfv1qscqYdy4vY+P4e3cAtmvppXQcRvrF1cB4drkv0haU24Y 7m5qYtT52Kr539RdbKKdLAM6s20lWy7+5C0DgacdwYWd/7PeCELyEipZJL07Vro7 Ate8Bfjya+wltGK9+XNUIHiumUKULW4KDx21+1NLAUeJ6PeW+DAkmJWF6QIDAQAB AoGBAJlNxenTQj6OfCl9FMR2jlMJjtMrtQT9InQEE7m3m7bLHeC+MCJOhmNVBjaM ZpthDORdxIZ6oCuOf6Z2+Dl35lntGFh5J7S34UP2BWzF1IyyQfySCNexGNHKT1G1 XKQtHmtc2gWWthEg+S6ciIyw2IGrrP2Rke81vYHExPrexf0hAkEA9Izb0MiYsMCB /jemLJB0Lb3Y/B8xjGjQFFBQT7bmwBVjvZWZVpnMnXi9sWGdgUpxsCuAIROXjZ40 IRZ2C9EouwJBAOPjPvV8Sgw4vaseOqlJvSq/C/pIFx6RVznDGlc8bRg7SgTPpjHG 4G+M3mVgpCX1a/EU1mB+fhiJ2LAZ/pTtY6sCQGaW9NwIWu3DRIVGCSMm0mYh/3X9 DAcwLSJoctiODQ1Fq9rreDE5QfpJnaJdJfsIJNtX1F+L3YceeBXtW0Ynz2MCQBI8 9KP274Is5FkWkUFNKnuKUK4WKOuEXEO+LpR+vIhs7k6WQ8nGDd4/mujoJBr5mkrw DPwqA3N5TMNDQVGv8gMCQQCaKGJgWYgvo3/milFfImbp+m7/Y3vCptarldXrYQWO AQjxwc71ZGBFDITYvdgJM1MTqc8xQek1FXn1vfpy2c6O -----END RSA PRIVATE KEY----- ` func RsaEncrypt(origData []byte, pubKey []byte) ([]byte, error) { block, _ := pem.Decode(pubKey) if block == nil { return nil, errors.New("public key error") } pubInterface, err := x509.ParsePKIXPublicKey(block.Bytes) if err != nil { return nil, err } pub := pubInterface.(*rsa.PublicKey) return rsa.EncryptPKCS1v15(rand.Reader, pub, origData) } func RsaDecrypt(ciphertext []byte, privKey []byte) ([]byte, error) { block, _ := pem.Decode(privKey) if block == nil { return nil, errors.New("private key error!") } priv, err := x509.ParsePKCS1PrivateKey(block.Bytes) if err != nil { return nil, err } return rsa.DecryptPKCS1v15(rand.Reader, priv, ciphertext) } var data64 string = `kkkHf5QSXx8aDadk66AOysmV8LOi4vWUANal+7KV6va/5ZR7PSWGRS5bzbK4vMyK9FA5CLQolr2NB6ouPNWpgq3Af7Pn/f45+pDtKRsBLX8+q/Mw7TOYR525e7nVePDBLM2wLQZ4Gh5QMQzEI3Me3Zc3030jRg0gEG13N/1EzMo=` func main() { data, _ := base64.StdEncoding.DecodeString(data64) origData, _ := RsaDecrypt(data, privateKey) fmt.Println("rsa-------" + string(origData)) } </code></pre> </div>

RSA OAEP,Golang解密,Java加密

<div class="post-text" itemprop="text"> <p>The Android client encrypt message, the java code </p> <pre><code>Cipher cipher = Cipher.getInstance("RSA/ECB/OAEPWITHSHA-256ANDMGF1PADDING"); byte[] publicBytes = Base64.decode(Configs.PUBLIC_KEY.getBytes("UTF-8"),Base64.DEFAULT); X509EncodedKeySpec keySpec = new X509EncodedKeySpec(publicBytes); KeyFactory keyFactory = KeyFactory.getInstance("RSA"); PublicKey pubKey = keyFactory.generatePublic(keySpec); cipher.init(Cipher.ENCRYPT_MODE, pubKey); String plaintext = "test"; byte[] encryptedBytes = cipher.doFinal(plaintext.getBytes("UTF-8")); String chipertext = Base64.encodeToString(encryptedBytes,Base64.DEFAULT); Log.d(TAG,"encrypted (chipertext) = " + chipertext); </code></pre> <p>The Golang server decrypt message, the golang code </p> <pre><code>func RsaDecrypt(encryptedString string) (string, error) { base64DecodeBytes, err := base64.StdEncoding.DecodeString(encryptedString) if err != nil { return "", err } privateKeyBlock, _ := pem.Decode([]byte(privateKey)) var pri *rsa.PrivateKey pri, parseErr := x509.ParsePKCS1PrivateKey(privateKeyBlock.Bytes) if parseErr != nil { return "", parseErr } decryptedData, decryptErr := rsa.DecryptOAEP(sha1.New(), rand.Reader, pri, base64DecodeBytes, nil) if decryptErr != nil { return "", decryptErr } return string(decryptedData), nil } </code></pre> <p>and the error in golang : <code>crypto/rsa: decryption error</code> </p> <p>I can't change the code on the server, so how to change the code in Java?</p> <p>Need your help</p> <p>Thx.</p> </div>

java rsa加密空指针问题

![图片说明](https://img-ask.csdn.net/upload/201710/10/1507630600_597555.png)

前端js 进行rsa加密的问题

情况大致如下: 1.前端需要对传输内容进行加密 ,采用加密方式为RSA加密 2.从后端能获取的数据 有: 1:RSA 模数 2: 公钥指数 仅仅能获取到这两个 求问: 前端如何计算出 publicKey ?

java RSA 加密 密钥怎么是这样???请求大神

如题:我使用java 进行rsa加密和解密,以前的密钥是这样的 ``` -----BEGIN RSA PRIVATE KEY----- MIICYAIBAAKBgQCFBCOuc0ADomD/ZIyUHFlzwbmbZQm+/NFC3vXJZpiuyCyU79GS +9igHN18NBJY2zPacdN0BR/Zw8zb5QEXncbx5bUMxrdut5cn540Z5EKCGXamEGNa YQqJOFdwLZ+MdpRhF9+LuBEJLShDHkqWOYxL9B9ChFusL6ffilJHovt1vQIDAQAB AoGBAIR/IA/Ia25zU81yWfm613vP79OTbIbbDJNgxlHMqbAIYygkTozr4tdyiUkM EW6DQv6IPYonBJgFSs2LKeaO2r78qYX7HS+d/FIHOItiYmn+/TVg4K31gvHDTR3h wHZYYj82DzLHzE6XUYi1Rskp/j7hLH9G6j9lvkC0LfCONYH9AkUAilhNcAXuo34/ 5mkJpARzYVh0z1yoIYLopgGnu+bZ9DKnJOFw7vgkW/ht9F1iDXtNyGNFNSvUR+4u +3ZLzUx/nCkWDWMCPQD2I7AnzI3xUrNtXmdmPVBu1rdnksvzlnB1Fq61UtZCl8lF l0wf8v/Mwoo+8cwIU76SZ7qotyOk8zMw6l8CRAwkY+eJHcDLu+AFKAt1OIs6sEXi 4/7M9o5bZtVfFZIRQApEnxzaOpa33y6rY4e7YsBLti9MgX0usoDviQejxy91i7Hx AjxbD7z+HGlvHH+RONncM1bsirdztBWMWt3kE64zGyB1pp4qBt18/HOyl056Fw67 DfB1Tbb68DZZsjgAItUCRGf3HjhNJ7Ds1vkxr/4TSpPrwtzdyRDL9rfMpPsMtxIx VIlm/QMhuocPa1n/X4sj7zr7lIO9hJQatH+o8H+k/RdU9C1U -----END RSA PRIVATE KEY----- -----BEGIN RSA PUBLIC KEY----- MIGJAoGBAIUEI65zQAOiYP9kjJQcWXPBuZtlCb780ULe9clmmK7ILJTv0ZL72KAc 3Xw0EljbM9px03QFH9nDzNvlARedxvHltQzGt263lyfnjRnkQoIZdqYQY1phCok4 V3Atn4x2lGEX34u4EQktKEMeSpY5jEv0H0KEW6wvp9+KUkei+3W9AgMBAAE= -----END RSA PUBLIC KEY----- ``` 可是java生成的密钥是这样的 ``` Public: Sun RSA public key, 1024 bits modulus: 115167042676305858738847186533249405669862094235824050170829472846838184071198269677735802427559009406378408679122716231466842633032672638784932362501517832025002317128732500267361048428339476135327496604377557607368863315349176457827649815598420261325717980373017826912041724701533957365472698961283209962067 public exponent: 65537 Private: sun.security.rsa.RSAPrivateCrtKeyImpl@7fb47 ``` 密钥如果不正常,我就不能在其他平台使用密钥进行解密,请求大神!!!

java 如何实现PEM格式的RSA加密和解密

思路是: 1、先用.NET生成XML格式的公钥和密钥 ``` /// <summary> ///在给定路径中生成XML格式的私钥和公钥。 /// </summary> public void GenerateKeys(string path) { using (var rsa = new RSACryptoServiceProvider(RsaKeySize)) { try { // 获取私钥和公钥。 var publicKey = rsa.ToXmlString(false); var privateKey = rsa.ToXmlString(true); // 保存到磁盘 File.WriteAllText(Path.Combine(path, publicKeyFileName), publicKey); File.WriteAllText(Path.Combine(path, privateKeyFileName), privateKey); MessageBox.Show(string.Format("生成的RSA密钥的路径: {0}\\ [{1}, {2}]", path, publicKeyFileName, privateKeyFileName)); } finally { rsa.PersistKeyInCsp = false; } } } ``` 2、再用BouncyCastle将XML的公钥和密钥转成PEM格式的 ``` /// <summary> /// RSA私钥格式转换,.net->java /// </summary> /// <param name="privateKey">.net生成的私钥</param> /// <returns></returns> public static string RSAPrivateKeyDotNet2Java(string privateKey) { XmlDocument doc = new XmlDocument(); doc.LoadXml(privateKey); BigInteger m = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("Modulus")[0].InnerText)); BigInteger exp = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("Exponent")[0].InnerText)); BigInteger d = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("D")[0].InnerText)); BigInteger p = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("P")[0].InnerText)); BigInteger q = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("Q")[0].InnerText)); BigInteger dp = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("DP")[0].InnerText)); BigInteger dq = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("DQ")[0].InnerText)); BigInteger qinv = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("InverseQ")[0].InnerText)); RsaPrivateCrtKeyParameters privateKeyParam = new RsaPrivateCrtKeyParameters(m, exp, d, p, q, dp, dq, qinv); PrivateKeyInfo privateKeyInfo = PrivateKeyInfoFactory.CreatePrivateKeyInfo(privateKeyParam); byte[] serializedPrivateBytes = privateKeyInfo.ToAsn1Object().GetEncoded(); return Convert.ToBase64String(serializedPrivateBytes); } /// <summary> /// RSA公钥格式转换,.net->java /// </summary> /// <param name="publicKey">.net生成的公钥</param> /// <returns></returns> public static string RSAPublicKeyDotNet2Java(string publicKey) { XmlDocument doc = new XmlDocument(); doc.LoadXml(publicKey); BigInteger m = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("Modulus")[0].InnerText)); BigInteger p = new BigInteger(1, Convert.FromBase64String(doc.DocumentElement.GetElementsByTagName("Exponent")[0].InnerText)); RsaKeyParameters pub = new RsaKeyParameters(false, m, p); SubjectPublicKeyInfo publicKeyInfo = SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(pub); byte[] serializedPublicBytes = publicKeyInfo.ToAsn1Object().GetDerEncoded(); return Convert.ToBase64String(serializedPublicBytes); } ``` 3、然后java怎么利用我转换成PEM格式的公钥密钥进行加密和解密,使得跟.NET的一样?

RSA加密不同服务器不一致

使用RSA加密,一台服务器能够成功,放到另一台服务器上面加密处理的结果完全不同, 导致下游不能解密,这个和服务器的什么有关系,着急!!!

关于python rsa加密问题

我现在有公钥,如何进行加密,不知道怎么使用,有没有代码啊? ,我现在有公钥,如何进行加密,不知道怎么使用,有没有代码啊?

ios RSA 模和公钥指数

最近在做一个ios客户端的项目,其中发送给服务端的数据请求要求使用RSA加密,模和公钥指数已经从服务端请求得到,弄了两三天一直没有解决,请问各位大神有没有好的解决思路,还请不吝赐教

关于前端RSA加密的方法和使用?

在使用rsa加密时候 需要引入公钥和私钥的 那么问题来了公钥和私钥都在js文件里面那做这个又有什么用呢

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

点沙成金:英特尔芯片制造全过程揭密

“亚马逊丛林里的蝴蝶扇动几下翅膀就可能引起两周后美国德州的一次飓风……” 这句人人皆知的话最初用来描述非线性系统中微小参数的变化所引起的系统极大变化。 而在更长的时间尺度内,我们所生活的这个世界就是这样一个异常复杂的非线性系统…… 水泥、穹顶、透视——关于时间与技艺的蝴蝶效应 公元前3000年,古埃及人将尼罗河中挖出的泥浆与纳特龙盐湖中的矿物盐混合,再掺入煅烧石灰石制成的石灰,由此得来了人...

上班一个月,后悔当初着急入职的选择了

最近有个老铁,告诉我说,上班一个月,后悔当初着急入职现在公司了。他之前在美图做手机研发,今年美图那边今年也有一波组织优化调整,他是其中一个,在协商离职后,当时捉急找工作上班,因为有房贷供着,不能没有收入来源。所以匆忙选了一家公司,实际上是一个大型外包公司,主要派遣给其他手机厂商做外包项目。**当时承诺待遇还不错,所以就立马入职去上班了。但是后面入职后,发现薪酬待遇这块并不是HR所说那样,那个HR自...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

外包程序员的幸福生活

今天给你们讲述一个外包程序员的幸福生活。男主是Z哥,不是在外包公司上班的那种,是一名自由职业者,接外包项目自己干。接下来讲的都是真人真事。 先给大家介绍一下男主,Z哥,老程序员,是我十多年前的老同事,技术大牛,当过CTO,也创过业。因为我俩都爱好喝酒、踢球,再加上住的距离不算远,所以一直也断断续续的联系着,我对Z哥的状况也有大概了解。 Z哥几年前创业失败,后来他开始干起了外包,利用自己的技术能...

C++11:一些微小的变化(新的数据类型、template表达式内的空格、nullptr、std::nullptr_t)

本文介绍一些C++的两个新特性,它们虽然微小,但对你的编程十分重要 一、Template表达式内的空格 C++11标准之前建议在“在两个template表达式的闭符之间放一个空格”的要求已经过时了 例如: vector&lt;list&lt;int&gt; &gt;; //C++11之前 vector&lt;list&lt;int&gt;&gt;; //C++11 二、nullptr ...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

深入剖析Springboot启动原理的底层源码,再也不怕面试官问了!

大家现在应该都对Springboot很熟悉,但是你对他的启动原理了解吗?

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发(16k)

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

【阿里P6面经】二本,curd两年,疯狂复习,拿下阿里offer

二本的读者,在老东家不断学习,最后逆袭

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《经典算法案例》01-08:如何使用质数设计扫雷(Minesweeper)游戏

我们都玩过Windows操作系统中的经典游戏扫雷(Minesweeper),如果把质数当作一颗雷,那么,表格中红色的数字哪些是雷(质数)?您能找出多少个呢?文中用列表的方式罗列了10000以内的自然数、质数(素数),6的倍数等,方便大家观察质数的分布规律及特性,以便对算法求解有指导意义。另外,判断质数是初学算法,理解算法重要性的一个非常好的案例。

《Oracle Java SE编程自学与面试指南》最佳学习路线图(2020最新版)

正确选择比瞎努力更重要!

面试官:你连SSO都不懂,就别来面试了

大厂竟然要考我SSO,卧槽。

微软为一人收购一公司?破解索尼程序、写黑客小说,看他彪悍的程序人生!...

作者 | 伍杏玲出品 | CSDN(ID:CSDNnews)格子衬衫、常掉发、双肩包、修电脑、加班多……这些似乎成了大众给程序员的固定标签。近几年流行的“跨界风”开始刷新人们对程序员的...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

我说我懂多线程,面试官立马给我发了offer

不小心拿了几个offer,有点烦

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

立即提问
相关内容推荐