chore: update generate_ssh_string
This commit is contained in:
@@ -7,14 +7,13 @@ pub fn with_sign(mut vec: Vec<u8>) -> Vec<u8> {
|
||||
|
||||
pub fn generate_ssh_string(e: &[u8], n: &[u8], comment: &str) -> String {
|
||||
let mut ssh_key = vec![];
|
||||
let ssh_rsa_bytes = "ssh-rsa".as_bytes();
|
||||
ssh_key.extend_from_slice(&(ssh_rsa_bytes.len() as u32).to_be_bytes()[..]);
|
||||
ssh_key.extend_from_slice(ssh_rsa_bytes);
|
||||
let e = with_sign(e.to_vec());
|
||||
ssh_key.extend_from_slice(&(e.len() as u32).to_be_bytes()[..]);
|
||||
ssh_key.extend_from_slice(&e);
|
||||
let n = with_sign(n.to_vec());
|
||||
ssh_key.extend_from_slice(&(n.len() as u32).to_be_bytes()[..]);
|
||||
ssh_key.extend_from_slice(&n);
|
||||
append_slice_with_len(&mut ssh_key, "ssh-rsa".as_bytes());
|
||||
append_slice_with_len(&mut ssh_key, &with_sign(e.to_vec()));
|
||||
append_slice_with_len(&mut ssh_key, &with_sign(n.to_vec()));
|
||||
format!("ssh-rsa {} {}", base64::encode(&ssh_key), comment)
|
||||
}
|
||||
|
||||
pub fn append_slice_with_len(v: &mut Vec<u8>, s: &[u8]) {
|
||||
v.extend_from_slice(&(s.len() as u32).to_be_bytes()[..]);
|
||||
v.extend_from_slice(s);
|
||||
}
|
||||
Reference in New Issue
Block a user