通过实现简单的银行接口实现账号密码验证码匹配

个人身份认证接口介绍   个人身份认证接口主要是用于互联网核验用户信息的真实性,比如在各类网站发布信息需要实名、注册域名需要实名、办理固定电话入网需要实名、线上购买金融产品需要实名等,总之,在很多业务场景中都会需要用户进行实名,这不仅仅是业务需求还是法规要求,同时要想确保实名信息的准确性就需要对用户提供的信息进行核验,而核验就需要使用个人身份认证数据接口来实现精确验证。   个人身份认证数据接口分为多种,企业会根据自身业务的需求选择对应的数据接口进行核验,个人身份认证数据接口包含手机验证码验证、免密登录/本机校验、简项核查(身 阅读详情

package com_5_9_bank;

public interface Union {

double saveMoney(double moneyCount);

void getMoney(double taste_money);

boolean checkPwdOrUser(String user, String pwd);

String Verification_Code();

}

package com_5_9_bank;

public interface CCB_Bank extends Union {

double saveMoney(double moneyCount);

void getMoney(double taste_money);

boolean checkPwdOrUser(String user, String pwd);

String Verification_Code();

}

package com_5_9_bank;

public class Card {

double money;
String user = "zhangsan";//定义了账号密码
String pwd = "1234";

}
package com_5_9_bank;

import java.util.Random;

public class ATM implements CCB_Bank {

Card c;

public boolean checkPwdOrUser(String user, String pwd) {

	if ((c.user.equals(user)) && (c.pwd.equals(pwd))) {
		return true;
	}
	return false;
}

public void insertCard(Card c) {
	this.c = c;
	System.out.println("插卡成功");
	System.out.println("欢迎使用本行信用卡");
}

public double saveMoney(double moneyCount) {
	c.money = moneyCount + c.money;
	System.out.println("本次存款:" + moneyCount + "  卡内余额:" + c.money);
	return c.money;
}

public void getMoney(double taste_money) {
	c.money = c.money - taste_money;
	System.out.println("取出:" + taste_money + "元");
	System.out.println("账户余额:" + c.money);
}

public String Verification_Code() {
	String str = getRandomString(7);
	System.out.println("验证码为:"+str);
	return str;
}

public static String getRandomString(int length) {
//生成随机字符串并返回作为其验证码
	String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";// 含有字符和数字的字符串
	Random random = new Random();// 随机类初始化
	StringBuffer sb = new StringBuffer();// StringBuffer类生成,为了拼接字符串

	for (int i = 0; i < length; ++i) {
		int number = random.nextInt(62);// [0,62)
		sb.append(str.charAt(number));
	}
	return sb.toString();
}

}

package com_5_9_bank;

import java.util.Scanner;

public class Test {

public static void main(String[] args) throws InterruptedException {
	ATM atm = new ATM();
	Card c = new Card();
	atm.insertCard(c);
	Scanner sc = new Scanner(System.in);
	System.out.println("请依次输入账号密码:");
	for (int i = 0; i < 3; i++) {
	/*	这里只是实现了输入错误3次之后跳出循环不允许输入
		如果需要直到输入正确  直接将for循环改为死循环即可*/
		String user = sc.next();
		String pwd = sc.next();
		boolean bl = atm.checkPwdOrUser(user, pwd);
		String str1 = atm.Verification_Code();
		if (bl) {
			System.out.println("账号密码匹配正确-------");
			System.out.println("请输入验证码:");
			String v_code = sc.next();
			if (str1.equals(v_code)) {
				System.out.println("验证码正确");
				System.out.println("欢迎您");
			} else {
				System.out.println("验证码错误");
				continue;
			}
			atm.saveMoney(100);
			atm.getMoney(50);
			break;//如果上述条件满足跳出本次循环
		} else {
			System.out.println("账号或密码错误-----");
			continue;//如果上述条件不满足跳出当前循环执行下一次循环
		}

	}

}

}
在这里插入图片描述

移动MAS短信系统HTTP接口对接与高并发优化实践 短信网关作为企业级通信基础设施,通过标准化协议实现与运营商平台的高效对接。其核心原理是基于HTTP/HTTPS协议的RESTful接口设计,支持批量短信发送与状态回调。在金融科技领域,该技术能显著提升交易提醒、验证码等场景的送达率与实时性。以移动MAS系统为例,合理配置连接池参数与异步处理模式可有效应对百万级并发需求。实践中需特别注意接口安全加固(如HTTPS强制启用)和编码规范(UTF-8处理),这些优化手段同样适用于电商物流、政务通知等高并发场景。 阅读详情

相关推荐

Python+Playwright自动化抢票实战:从原理到实现

网络爬虫与浏览器自动化是Python在数据采集和流程自动化领域的核心技术。其原理是通过程序模拟人类在浏览器中的操作,如点击、输入和页面跳转,从而突破手动操作的效率瓶颈。这项技术的核心价值在于将重复、耗时的任务自动化,显著提升操作精度与响应速度。在电商抢购、数据监控、表单填写等对时效性要求高的场景中,自动化脚本能发挥巨大作用。本文聚焦于票务抢购这一典型应用,详细解析如何利用Playwright框架模拟用户登录、监控页面状态、处理验证码等关键步骤,构建一个稳定高效的抢票工具,其中涉及的反爬策略应对和异常处理机制

weixin_30613343的博客 497

类的构造方法编程训练2—设置信用卡密码

编程训练4 【训练4】设置信用卡密码,创建信用卡类,有两个成员变量,分别是卡号和密码,如果用户开户时没有设置初始密码,则使用 123456作为初始密码。设计两种不同的方法,分别用于设置密码和用户未设置密码的两种构造场景。 package java入门到精通; ​ public class Credit { //信用卡类 String carnum; //卡号 String passward; //密码 public Credit(String ca...

m0_47792921的博客 3335

KeePassHTTP插件:实现浏览器自动填充密码的本地安全方案

密码管理器是现代数字生活中保障账户安全的核心工具,其核心原理是通过加密存储和主密码保护,集中管理各类登录凭证。在技术实现上,本地存储方案因其数据自主可控而备受青睐,但往往面临便捷性不足的挑战。KeePassHTTP插件正是为解决这一矛盾而设计的技术方案,它通过在本地建立加密的客户端-服务器通信模型,实现了浏览器与KeePass数据库的安全交互。该方案的价值在于,在不牺牲本地存储安全性的前提下,将手动复制粘贴的繁琐操作自动化,显著提升了日常登录效率。其典型应用场景包括个人电脑上的网页浏览、多浏览器环境下的密码

weixin_30873847的博客 301

[训练4]设置信用卡密码(构造方法的this用法)

[训练4]设置信用卡密码(构造方法的this用法)

qq_43118674的博客 893

网络安全职业选择:识别你的问题解决惯性而非匹配兴趣

网络安全并非单一技术职业,而是融合攻击视角、防御构建与治理协调的复合型领域。其核心在于个体面对安全问题时的本能思维模式——是倾向主动施压找漏洞(对抗驱动),还是系统化建控闭环(防御构建),抑或在技术与业务间架设翻译桥梁(治理协调)。这种‘问题解决惯性’决定长期适配性,远超工具熟练度或证书堆砌。它直接关联渗透测试中的风险量化表达、SOC运营里的告警优先级直觉、GRC工作中对GDPR第32条与等保2.0第6.2.3条的场景化落地能力。本文基于6年一线实战,提供可验证的自测方法与岗位真实工作切片,帮助从业者跳出J

weixin_30240349的博客 486

Selenium自动化登录实战:从原理到避坑的完整指南

Web自动化是提升测试效率和业务流程自动化的关键技术,其核心在于模拟真实用户与浏览器的交互。Selenium作为主流的浏览器自动化工具,通过WebDriver协议驱动真实浏览器,能够执行点击、输入、导航等操作,有效处理JavaScript渲染和动态内容。这项技术的核心价值在于将重复、手动的Web操作转化为稳定、可编程的流程,大幅提升执行一致性并支持无人值守任务。在自动化测试、数据抓取、日常办公流程自动化等场景中,自动化登录往往是关键的第一步。本文聚焦于使用Selenium构建健壮的自动化登录模块,深入探讨了

weixin_34302561的博客 353

java信用卡类,设置默认密码

System.out.println("您的账号为:"+kh+",密码为初始默认密码 123456");if(passward.equals("123456")) { //判断密码是否修改。System.out.println("您的账号为:"+kh+",密码为:"+passward);//默认为123456。public am14(String kh,String passward) { //有密码的构造方法。直接展示,拿走不谢!

2201_75960442的博客 395

KeePassHTTP插件配置指南:实现浏览器自动填充密码

密码管理是网络安全和个人信息保护的基础环节,其核心原理在于通过加密算法对敏感凭证进行安全存储与调用。在众多技术方案中,本地密码管理器因其数据自主可控而备受青睐,它通过主密钥加密本地数据库文件,从根源上避免了云端泄露风险。KeePass作为一款开源免费的本地密码管理器,通过插件生态扩展其技术价值,其中KeePassHTTP插件扮演了关键角色,它在本地启动一个微型HTTP服务器,与浏览器扩展建立加密通信,实现了在保持端到端加密优势下的**自动填充**功能。这一机制极大地提升了日常登录场景的效率,用户访问网站时,

aodan5477的博客 375

Java的第七次作业

代码如下:package 作业8;/***/public class Human {//创建类//定义年龄public String toString() {//主方法1return "我"+age+"岁,我是";//输出内容public static void main(String[] args) {//主方法age=18;//给age赋值为18if(age>=18) {//if语句,条件age>=18。

JOSOD的博客 132

使用Java编写的一个银行信用卡管理系统,简单实用.rar

使用Java编写的一个银行信用卡管理系统,简单实用.rar

JAVA写的信用卡管理系统

java写的信用卡管理系统,C/S结构,JDBC连接SQL server

JavaWeb开发~模拟简单的用户登录验证功能(实现一个请求路径,跳转或返回其他页面的内容)

前后端分离开发模式,分别以前端跳转与后端跳转的方式实现模拟简单的用户登录验证功能(实现一个请求路径,跳转或返回其他页面的内容),验证成功跳转到指定页面,验证失败则分为两种情况,前端跳转时提示账号密码错误;后端跳转时刷新当前页面......

qq_58284486的博客 4070

银行账户管理 JAVA

银行账户管理java程序创建账户 修改账户 存款取款 删除账户

史上最细,银行测试-信贷贷款项目测试点汇总+面试(四)

银行项目里面有哪些系统?1)CFS-APV消费信贷集中审批系统==》信贷的初审,复审,回退,质检2)CFS-counter柜面服务系统==》信贷的合同签订,单证,借款人申请书,校验放款id3)金融服务管理平台:供应链系统4)授信系统:授信调整和授信调整,综合授信控制5)柜面系统:主要做审批 财务处理 扣款收款 流水6)风控系统:风控预警,风控限额,决策引擎,征信平台,催收系统7)电信防诈骗系统:反诈骗预警8)短信及彩信公共平台:主要是查看走单过程当中的验证码。

m0_70102063的博客 1275

无人机多旋翼倾转动力测试系统-适用于(eVTOL开发、缩比模型测试、科研教育)

LY-QZ-F4多旋翼倾转动力测试系统是全球首款专为倾转四旋翼设计的多自由度动力测试平台,融合高精度传感、动态倾转模拟与智能工况分析,为下一代eVTOL技术提供全维度验证工具。采用航空级应变传感器(精度±0.1% FS),同步捕获推力、扭矩、俯仰/滚转力矩,动态误差<1%。同时测试电驱动系统(单轴最大150kW)与混合动力单元(增程式),支持高压(800V)平台。通过MET数据采集软件,控制采集一体化,定制化,实时观察上百个传感器数据,实时更改测试需求。可搭配六维姿态平台,温湿度舱、振动台等环境模拟设备。

weixin_49209795的博客 874

旅行青蛙破解汉化教程——蹭个热度

汉化破解版资源(无尽三叶草与点券): https://github.com/wisdombyzf/lxqw/blob/master/lxqw_zf.apk 截图: 破解方法: 工具: 1,APKIDE https://www.pd521.com/thread-818-1-2.html 2,dnspy https://down.52pojie.

github_38838414的博客 3783

c++使用OpenSSL基于socket实现tcp双向认证ssl(使用TSL协议)代码实现

相信各位对OpenSSL库已经不陌生了,目前笔者使用这个库实现了RSA、AES加解密和tcp的双向认证功能,下面来看tcp的双向认证。 1、什么是双向认证 简单说双向认证就是:客户端认证服务端是否合法,服务端认证客户端是否合法。 可以借助于HTTPS来说明,http网络传输协议是超文本的明文协议,也就是说经过网卡传输的字节序列都是明文,那么HTTPS上的s就是双向认证的操作(ssl),实际上就是在http的逻辑上再套一层ssl握手,进程想要发送的字节序列数据经过http传输时再加上一层ssl来让c和s两端先

dream_caoyun的博客 1万+

AI Olympics:面向真实决策的不完全信息博弈评测框架

在人工智能落地实践中,传统基准测试(如MMLU、GSM8K)擅长评估知识调用与静态推理能力,却难以衡量模型在动态、模糊、高代价的真实场景中的策略决策水平。AI Olympics正是为弥补这一断层而生——它以扑克、狼人杀等社会性博弈为载体,系统考察模型在不完全信息下的对手建模、欺骗检测、多步序贯推理与代价敏感执行等核心能力。其技术价值在于将‘黑箱决策’转化为可追踪、可归因、可压力测试的动态思维图谱(DTG),支撑金融风控、智能客服、交通调度等强交互业务场景的能力诊断与持续优化。

weixin_30983965的博客 296

支付漏洞:指尖支付背后的 “暗箭”,攻击链全程拆解

支付漏洞是支付系统的安全缺陷,可导致资金被盗、隐私泄露及系统信任崩塌,主要出现在 “浏览器跳转支付通知” 流程,根源是客户端与服务端数据校验不一致。攻击原理涉及身份认证(如验证码劫持)、交易授权(如服务端校验缺失)、数据传输(如中间人攻击)缺陷,攻击手段包括参数篡改、验证码劫持、接口攻击等,典型场景有 GSM 嗅探盗刷、参数篡改交易等,防御需全链路强化认证、加密传输等。

欢迎来到我的博客 1670

ArduSub程序学习(1)——ardupilot框架整理

AP_HAL层(硬件抽象层)是我们制作 ArduPilot 的方式可移植到许多不同的平台。有一个顶级AP_HAL libraries/AP_HAL,用于定义代码其余部分的接口 有针对具体的板子特性,然后就有了AP_HAL_XXX 子目录,例如,AP_HAL_AVR 用于基于 AVR 的 开发板,AP_HAL_PX4用于 Pixhawk 开发板和 AP_HAL_Linux 基于 Linux 开发板。工具目录tools directories工具目录是杂项支持目录。

weixin_49839886的博客 2812

Abaqus 2023 保姆级安装避坑指南:从环境变量到许可证配置,一次搞定

本文提供Abaqus 2023的详细安装指南,涵盖环境变量设置、许可证配置等关键步骤,帮助用户避开常见安装陷阱。通过系统环境检查、目录结构规划、许可证服务器安装及Java环境配置等实用技巧,确保顺利完成安装并优化软件性能。

weixin_42524276的博客 425

网络安全—如何预防常见的API漏洞

跟随着互联网的全面发展,API这一词频繁出现在大家的视线之中,什么是API呢?API全称Application Programming Interface,翻译出来叫做“应用程序接口”,是一些预先定义的接口(如函数、HTTP接口),或指软件系统不同组成部分衔接的约定。用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。 如今,API 已成为将当今APP经济的粘合剂,在Web 2.0的浪潮到来之前,开放的API 甚至源代码主要体现在桌面应用上,越来.

AIwenIPgeolocation的博客 2957

【大模型】Coze AI 智能体工作流从配置到使用实战详解

Coze 扣子智能体工作流从配置到使用实战详解

congge 1万+

pikachu - 暴力破解

对于暴力破解而言,我们需要准备好字典。什么是字典?对于从事网络安全的人员来说,字典就是包含常用字词、短语和数字组合的列表。它不会像新华字典那样为你详细的解释字词的含义,但是它包含了常见的或不常见的(通常为根据某人、某事、某地特别制定的)一些字词、短语或者数字的组合或非组合(全为数字或者全为字词等)。字典被尝试用来匹配目标的账号及口令,来完成自己的目的。

风依旧的博客 1284

文章ACCEPT之后填写内容教程-Springer-Verlag即施普林格

1. 确认corresponding author通讯作者机构是否正确(最好细分到系,如搜不到系只填大学也可)这些信息因为在投稿的时候都填过,所以一般都没问题,可确认并继续。2. Co-Author: 这篇文章有没有其他作者,如果有就选yes,并确认投稿时所填的作者姓名和机构是否正确。这个也是如果前期都填对了就不用修改。3. Research funders: 问文章的研究有没有资助,没有就选no,有就选yes,并填写机构名称和grant/contact numbers。

ZhangJiqun&191cm&85kg 4775

AUTOSAR CP R18-10 架构总览与导航

AUTOSAR CP R18-10 架构总览 本文档系统整理了AUTOSAR CP R18-10版本的199篇技术规范,涵盖7大架构层级: 应用层(15篇):包含车身舒适、底盘控制、HMI、安全系统、动力系统等AI应用 RTE(1篇):虚拟功能总线规范 服务层(159篇):细分为系统服务(OS/ECU管理/加密)、存储服务、通信服务(CAN/LIN/Ethernet) ECU抽象层(20篇):I/O与通信硬件抽象 MCAL(41篇):微控制器驱动层 复杂驱动(14篇):CDD设计与SPAL支撑 规范模板(2

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 717
上一篇: 一个 5 位数,判断它是不是回文数
下一篇: 编写一个函数 统计一个英文字符串中每个字符出现的次数 例如: * 键盘输入一个how are you * 输出结果为:{'h':1:'o':1,'w':1........ }
倾听心跳的频率灬
博客等级 码龄8年 13粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值