public UniRx.IObservable <Sas.Net.HTTPResult> SignUp(AccountSignupParam param)
            {
                return(Observable.Range(0, 1)
                       .SelectMany(_ => {
                    var req = new AccountSignUpReqParam();
                    using (var aes = new System.Security.Cryptography.AesManaged()) {
                        using (var iv = SecureHelper.APP_IV) {
                            aes.IV = iv.GetByte(Convert.FromBase64String);
                        }

                        using (var key = SecureHelper.APP_KEY) {
                            aes.Key = key.GetByte(Convert.FromBase64String);
                        }

                        req.authentication = authentication;
                        req.token = param.password.GetByte(aes.Encrypt);
                        req.email = param.email.GetByte(aes.Encrypt);
                        using (var rsa = new System.Security.Cryptography.RSACryptoServiceProvider()) {
                            req.public_key = aes.Encrypt(rsa.ToXmlString(false));
                            req.private_key = rsa.ExportPrivateKey().GetByte(aes.Encrypt);
                            req.test = param.email.GetByte(rsa.Encrypt);
                        }
                    }

                    var json = JObject.FromObject(req);
                    return context.Post("/Account/SignUp", json);
                }));
            }