在真实环境下对智能卡RSA算法进行了功耗采集,通过简单功耗分析攻击(SPA)提取出了密钥,证明了传统的模幂运算二元表示(Binary Representation,BR)算法存在明显的密钥信息泄露缺陷。分析发现,信息泄露发生在程序的跳转分支处。针对这一缺陷,提出了一种原子化操作与引入随机数相结合的模幂算法。通过操作的原子化统一了模幂算法的执行路径,消除因跳转分支引起的信息泄露;引入随机数对密钥的汉明重量进行掩盖,有效地防止密钥信息的泄露。在MC8051上的实测验证表明,新算法确实具有抗简单功耗分析的特性。