5
一個例子是爲什麼Rails會話cookie無法完全解碼Base64?一個Rails 2.3.8會話cookie的
BAh7BzoLZm9vYmFyaQc6D3Nlc3Npb25faWQiJWIzOTRhNGFkNDg1Mjk2NGM2NDU1Mzc4ZTM0YjkzZjE2--67046ba78aa6d656ec7c64e73aac156f5e503627
因此我假定所述第二部分(--
之後)是校驗和,並且如果一個Base64解碼完成:
$ script/console
Loading development environment (Rails 2.3.8)
> Base64.decode64("BAh7BzoLZm9vYmFyaQc6D3Nlc3Npb25faWQiJWIzOTRhNGFkNDg1Mjk2NGM2NDU1Mzc4ZTM0YjkzZjE2")
=> "\004\b{\a:\vfoobari\a:\017session_id\"%b394a4ad4852964c6455378e34b93f16"
> puts Base64.decode64("BAh7BzoLZm9vYmFyaQc6D3Nlc3Npb25faWQiJWIzOTRhNGFkNDg1Mjk2NGM2NDU1Mzc4ZTM0YjkzZjE2")
{:
foobari:session_id"%b394a4ad4852964c6455378e34b93f16
據說foobar
應該有一個值爲2,它不會顯示...什麼是session_id
如果它是基於一個cookie - 爲什麼它需要一個id
?
所以解碼時,在之後刪除'--'和十六進制字符串。所以它應該會很好,不是嗎? – 2011-03-03 02:53:05
@動靜能量是的,然後你必須用元帥反序列化它。我編輯了我的答案。 – pseidemann 2011-03-17 07:35:39