通过自编应用程序访问自己的银行帐户

时间:2010-06-28 20:37:32

标签: java c++ security onlinebanking

我已经使用MS Money几年了,由于我的“编码兴趣”,知道从哪里开始学习编写这样一个应用程序的基础知识会很棒。更好的说法:它不是关于如何设计和编写应用程序,而是关于“银行细节”。 (只显示某个银行账户的金额对我来说是一个愉快的目标。)。

我想用C ++或Java来做,因为我已经习惯了这些语言。

对于一个爱好项目,它会“太大”吗?我不太了解所有安全问题,银行服务器接口/技术等等。

在“不”之后的第一个位置,我需要一个可靠的学习来源。

6 个答案:

答案 0 :(得分:9)

我使用的大多数应用程序都是从银行网站上导出的文件中读取的,这是相对简单的。

如果这是你想要走的路,你需要编写代码:

  • 登录银行网站,通过HTTPS下载文件
  • 获取文件格式的规格或对其进行反向工程
  • 将您选择的任何业务规则应用于结果数据

答案 1 :(得分:1)

我认为这是一个非常合理的爱好项目;从简单的分类帐开始,然后您可以添加功能。

我要做的一些事情就是开始这样一个项目:

  • 确定初始功能集。一个好的开始可能只是一个分类账/账户 - 基本上是平衡支票簿。使这个足够通用,你可以有几个。
  • 设计数据模型。您的分类帐有哪些字段?对每个人的价值有什么限制?
  • 选择技术。你想用什么语言编程?你将如何坚持数据?您想要什么GUI - 像MS钱或Web应用程序这样的胖客户端?

从那里,如果有保证,请写下一些设计说明并开始编码!

答案 2 :(得分:1)

您可以查看OFX4JOpen Financial Exchange规范的实现,提及here以及@nicerobot的评论。

答案 3 :(得分:1)

你在寻找mint.com - 是吗?根据我对他们的安全策略的理解,这就是他们如何做到这一点:您向他们提供他们立即向银行提供的在线帐户凭据,并获得“只读”帐户登录信息。然后,他们会丢弃您提供的凭据,并使用“只读”凭据每24小时更新一次指标。我不知道他们是如何做到的,或者他们是否与银行有特殊的关系,但这是可能的。

答案 4 :(得分:1)

在未经银行明确书面许可的情况下尝试以编程方式与银行网站进行交互时,首先要记住的是,很可能会违反网站使用协议,并且可能会给您带来更多的麻烦。

其次,你不想通过尝试解决大规模和敏感的事情来开始'学习'编程。并不是说最终的目标有什么不妥,但这是一个千人联赛的旅程,你需要迈出第一步。

我想说从一个简单的编程环境开始,比如python或perl。理由,您不必担心链接,库,代码生成等。习惯于您想要在功能上实现的基础知识,它们将重新实现C ++或Java中的下一步。

首先关注学习客户端 - 服务器编程。

编写客户端,编写服务器,了解所有有关套接字的知识,了解有关TCP编程的所有信息,

然后了解安全套接字层(SSL)和传输层安全性(TLS)。

完成此操作后,请尝试切换到C ++或Java,看看是否可以重复此效果。

有很多关于这些主题的教程。

熟悉之后,了解哪些工具和库已经可用于执行大多数常见操作。例如,libcurl非常适合创建常见的Internet应用程序协议客户端(HTTP,HTTPS,FTP等)。

查看是否可以创建一个可以使用Web浏览器“登录”的交互式程序,该浏览器以XML格式输出内容并使用级联样式表对其进行格式化。

这应该引导你进入javascript世界,那里有强大的工具,如jquery。如果你正确地混合和匹配这些,你会发现开发可以很有趣而且非常迅速。

: - )

快乐的旅行。

答案 5 :(得分:0)

我不认为很多(如果有的话)银行提供api。

瑞典的在线预算应用程序似乎依赖于以某种excel格式导出交易,或者只是让你“标记银行系统中的所有交易,ctrl-c然后在文本框中按ctrl-v “,然后解析。