rust 处理base64 编码


use base64::{engine::general_purpose::STANDARD, Engine as _};
use clap::Parser;

/// 将任意字符串编码成 Base64。
#[derive(Parser)]
#[command(author, version, about)]
struct Args {
    /// 要编码的原始字符串;若省略,则从 stdin 读取
    input: Option<String>,
}

fn main() {


    // 1️ 获取待编码内容
    let raw = "-----BEGIN PRIVATE KEY-----
    b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABlwAAAAdzc2gtcn
    NhAAAAAwEAAQAAAYEA1Gslvu9XWH8m/k2Th/uHg3+7cr3w5dj+yS72jvMaeUMwvRPzfoVL
    mGWyg4KWmHS7t3AeLMGacIOongMhnv3frWXrpv8L93znVfyjUDs1d9wDkEZz9vmH3RAdUS
    h7GIr6kg92LICTqUiuoA/cgMIBlnpfGY83EO37B9pKa8cj/GjjLQeW/v352LsR3uOFDGTj
    WRl8aquyVu5zKyniAjmClt6h0542mkAGIqWC8+X36WDldrQNAGeILfDp71JoJXzYxlyKN7
    rt2peF4SSzNrasDxiNR7zWLeZ6RRKP9fbxEYUwesfmjgSMhjYuF3iujzUQ4inwPNxJsos0
    xQXvbWlc+ktD/aOpO8I7PAWWpbmLuYArM3wnlLAsMoKSdG5QRRs6Ek3HhMC6gyk2SiDYRP
    FIPgBitdMFq8WOux9A3SNfb622/GNe9U9D0JDKVrfTUJEenZUy/dokvdQ6HTr0yQI5KTXC
    VKdp9SPTYsf9IBSGwSAfMiCBRQc3cwMD1bg5oV+xAAAFkO1LCeHtSwnhAAAAB3NzaC1yc2
    EAAAGBANRrJb7vV1h/Jv5Nk4f7h4N/u3K98OXY/sku9o7zGnlDML0T836FS5hlsoOClph0
    u7dwHizBmnCDqJ4DIZ79361l66b/C/d851X8o1A7NXfcA5BGc/b5h90QHVEoexiK+pIPdi
    yAk6lIrqAP3IDCAZZ6XxmPNxDt+wfaSmvHI/xo4y0Hlv79+di7Ed7jhQxk41kZfGqrslbu
    cysp4gI5gpbeodOeNppABiKlgvPl9+lg5Xa0DQBniC3w6e9SaCV82MZcije67dqXheEksz
    a2rA8YjUe81i3mekUSj/X28RGFMHrH5o4EjIY2Lhd4ro81EOIp8DzcSbKLNMUF721pXPpL
    Q/2jqTvCOzwFlqW5i7mAKzN8J5SwLDKCknRuUEUbOhJNx4TAuoMpNkog2ETxSD4AYrXTBa
    vFjrsfQN0jX2+ttvxjXvVPQ9CQyla301CRHp2VMv3aJL3UOh069MkCOSk1wlSnafUj02LH
    /SAUhsEgHzIggUUHN3MDA9W4OaFfsQAAAAMBAAEAAAGABtRHC2NwgHTeERD3bEjG65Bgu2
    il5Q3b6yXqYWAperqRR5Lroiaw7n5eheHd65rdKiGdpry2tWVWN3ZMT2tEFLQRJnZOsS8/
    1MDhk0PEDU1yg+Hv+oG9P3s0JhbSFlDpi2aZ2wZrOOcQTi8UXMNf/7GBezXihFXSW0dGWz
    60xnmszBbRYPNTZAdnpK3V6jcYJBYwrNFGU4spArs+++lTbHxN4ZrVkJH8YILHugWrucIW
    voE9ZcTuWOPE8Z/Jn2LrGjmolNB55mkLzHzXJ+Aks+mfebfifogR6sn0gzhgUW4OKGWVu+
    zd9XTfQCSFERnrKGQf/jsBDDMmBz1YY8j5Sz2mIbjBA2B7tz8i2t2XIemNPuoMW9FbiTOC
    8COLLnpC7oaMwbbYG/fvefrmB+Hh01ZCMjOryEW+iCi5Yp8r23zjmmVkHp5/TUq20PeFe7
    T5KrTStcF2PFu75V/vsYBddn7XB09LJ82DxxSiclpE8TH0ZZyIVvf6VF5Xg6dsW51NAAAA
    wQCwbyiPSDfjBC4artz5o3qDkWMgMmhsWpvJ0A2J+MRrXEUPpRYpjgiPVQGjuogbuKWsay
    RIHbD6+IZiNxaQdXkbcoUgvDpvyArwxgMsYeIAcugJmIgRTeNaA84Hxm39eTjFlGoQCE06
    ryT9bvSdPrymmfXLMzRPHdslzZ07I/6pIYDkcf+nbro+kxeTOQWV14xO09zt2k1aNfd6BL
    cwL6f5Pv8WsObFcCllY4duBrbP+JbnlrAtwzO6YQCqBSVCMI0AAADBAPW7UhhB4Lx2/D4G
    XaAifCIE2rmPoA+1gTWoAJDYyVn0oZQzr1ovetHn3a8bNoUiuFWsVpsGKMbFhqQR4PDOZJ
    tX0LlQ7Uul0zg85ZO4Z1w4Tl4CLQf8kEL95evvQfCZxM30e8T7woFvWRciVeBsOt5o74t2
    rLKZbYVf2/JG1vLJq1lAoWhO1nba0FaKnZcmJ6wLPrMnRNqecRTI5rcXtV34v+fdxr4Q+o
    ewknHnn/Q65lN2e2yd5etlq0tgfn6RpwAAAMEA3Ut2wmWlXuSc5AsPJyCSF1G8mTB3UA8k
    NbRGG/0Ks8C44nqvTcKdguBFWXLT0VVCw0Cum8ME84Y6xz27ACU6MpxKJ6nCmsH/zQFrc2
    SmjRGIdNkzjJ1U6XAAiDHdXPT0YbF4bc45ZXjOwEC5s6Bs2HlAzwJRcnyWGr5bJ8lmRC5k
    az8b1VcwBMfS6qFPFwnm0q3eG8dot9aevOSe90zvGFqXfKo77bpTIj2A6phkniFqAiaQ5t
    TPPWsPJ7FGXr7nAAAAGWJydWNlQGJydWNlLUluc3Bpcm9uLTM5MTAB
    -----END PRIVATE KEY-----";

    // 2️编码
    let encoded = STANDARD.encode(raw);

    // 3️输出
    println!("{encoded}");

    let decoce1 = STANDARD.decode(encoded).unwrap();
    println!("{decoce1:?}");

    let decode_str = String::from_utf8(decoce1).unwrap();
    println!("{decode_str}");
}
[package]
name = "samcheck"
version = "0.1.0"
edition = "2021"
authors = ["bruce "]

[dependencies]
anyhow_ext = "0.2"
futures = "0.3"
ssh2 = "0.9.5"
regex = "1.7.3"
base64 = "0.22"
clap   = { version = "4.5", features = ["derive"] } 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值