我正在尝试编写一个小的Base64编码器/解码器程序,并且当试图遇到无效的字符时,我试图弄清楚是否有任何规则,或任何指南或预期的行为。 / p>
我可以快速失败(抱怨和退出),忽略无效字符(就像我会为换行做的那样等),或者做一个垃圾进入,垃圾出局的方法(数据将被部分解码,其余的取决于严重程度或确切的错误数量。)
在类似的观点上:我想我应该忽略换行符(比如在PEM文件中,行以64个字符的长度被破坏),但是还有其他任何我可以预期的控制字符,应该忽略吗?< / p>
如果它有任何意义,我用纯(香草)C编码,它还没有它的库。但是这个细节对我正在寻找的答案来说并不重要。
感谢。