密码爆破时需要读取用户名字典和密码字典来生成笛卡尔积派发爆破任务;直接读取全部字典内容到内存时成本较高;

package main

import (
"bufio"
"fmt"
"os"
) func main() {
// 打开1.txt文件
file1, err := os.Open("1.txt")
if err != nil {
fmt.Println("无法打开文件1.txt: ", err)
return
}
defer file1.Close() // 打开2.txt文件
file2, err := os.Open("2.txt")
if err != nil {
fmt.Println("无法打开文件2.txt: ", err)
return
}
defer file2.Close() // 读取1.txt文件中的每一行作为用户名,逐行读取
scanner1 := bufio.NewScanner(file1)
for scanner1.Scan() {
user := scanner1.Text() // 读取2.txt文件中的每一行作为密码,逐行读取并输出结果
scanner2 := bufio.NewScanner(file2)
for scanner2.Scan() {
password := scanner2.Text()
fmt.Printf("username: %s, password: %s\n", user, password)
}
file2.Seek(0, 0)
}
}

使用了逐行读取的方式来读取1.txt和2.txt文件的内容,这样可以避免将整个文件读入内存。在计算笛卡尔积时,我们直接在内部循环中输出结果,而不必将结果存储到一个切片中。另外,为了让内部循环能够重复使用2.txt文件,我们在每次循环结束后使用 file2.Seek(0, 0) 将文件指针重置到文件开始位置。

golang读取用户名和密码文件并生成笛卡尔积的更多相关文章

  1. PHP 简易读取文件目录下的文件,生成css spirte图片

    因为个人不是对PS熟悉,不清楚如何在PS中生成一张横向有序的spirte图片,使用了"css sprite V4.3"版本,生成的图片会出现压缩图片大小的情况,本想修改原作者开发的 ...

  2. Android——用户登陆及用户名和密码的保存

    Android——用户登陆及用户名和密码的保存   在之前的学习过程中已经将Android学习完了,但是在后面将近一年的时间里都没有进行过Android开发,所以对Android的所有的知识点又有点忘 ...

  3. svn 用户名,密码 查看/删除

    1.查看svn 的用户名,密码: 找到用户名,密码文件,都是明文的,你可以看到 例:linux ls ~/.subversion/auth/svn.simple 2ab598e9cb6d6d38761 ...

  4. [Jmeter]通过批处理调用java,java从CSV动态读取登录的用户名和密码,并将其作为参数组合成字符串,写入外部.bat文件,然后通过Java执行这个外部批处理文件

    问题1:怎样通过批处理调用java代码? 问题2:怎样通过java从CSV文件获取到用户名和密码存入变量? 问题3:怎样将获取到的用户名和密码组合成字符串,写入外部批处理文件? 问题4:怎样在批处理文 ...

  5. 【jmeter】使用csv文件生成用户名和密码列表

    介绍 在[jmeter]使用jmeter进行测试-示例 中介绍了jmeter的基本使用,本文将介绍如何使用csv文件生成多个用户名. 应用场景 实际测试中,经常需要模拟多个用户进行负载测试,而用户名和 ...

  6. 【Jmeter】如何通过文件导入方式对用户名和密码进行参数化设置

    JMeter 参数化 注意:param和data body只能用一个.所有任何一个里面有内容,切换都会报错,这不是问题,jmeter是这么设计的 方法一:通过添加CSV Data Set Config ...

  7. IIS访问PHP文件时,弹出用户名和密码提示框的解决方法

    找了一圈,以下的方法解决了IIS访问PHP弹用户名和密码提示框问题. 解决方法:给PHP安装目录everyone读取权限 这样不知道会不会出现安全问题,请大家谨慎.

  8. SVN的搭建及使用(三)用TortoiseSVN修改文件,添加文件,删除文件,以及如何解决冲突,重新设置用户名和密码等

    添加文件 在检出的工作副本中添加一个Readme.txt文本文件,这时候这个文本文件会显示为没有版本控制的状态,如图: 这时候,你需要告知TortoiseSVN你的操作,如图: 加入以后,你的文件会变 ...

  9. TFRecords文件的生成和读取(1)

    参考:https://blog.csdn.net/u012222949/article/details/72875281 参考:https://blog.csdn.net/chengshuhao199 ...

  10. iis配置好后,解决打开服务器要输入用户名和密码的问题

    [转]IIS网站访问需要输入用户名和密码 xp系统下安装IIS5,并设置好网站路径,但是访问网站时需要输入用户名和密码,这个问题极大可能是因为你网站放置在一个文件系统为NTFS的盘符上,而IIS默认的 ...

随机推荐

  1. [转帖]JVM随笔 --- 安全点(safe point)与 安全区域( safe region)

    https://zhuanlan.zhihu.com/p/461298916 11 人赞同了该文章 最近回顾 JVM safe point 与 safe region 又有一些新的感悟与收获,特别写篇 ...

  2. [转帖]ss 输出格式说明

    ss 命令输出详解ss 全名socket statistics,是iproute2中的一员ss已经替代netstat,大热于江湖.但是关于ss命令输出的内容,是什么意思呢? [root@test]#  ...

  3. [转帖]使用 mydumper/loader 全量导入数据

    数据迁移 mydumper 是一个更强大的数据迁移工具,具体可以参考 https://github.com/maxbube/mydumper. 我们使用 mydumper 从 MySQL 导出数据,然 ...

  4. [转帖]Docker资源(CPU/内存/磁盘IO/GPU)限制与分配指南

    https://zhuanlan.zhihu.com/p/417472115 什么是cgroup? cgroups其名称源自控制组群(control groups)的简写,是Linux内核的一个功能, ...

  5. [转帖]Elasticsearch8关闭安全认证功能

    https://juejin.cn/post/7203637198120878137 Elasticsearch8在默认情况下是开启安全认证的.但在开发或者简单尝试时,希望关闭它. 关闭安全认证的方式 ...

  6. [转帖]docker 最新版本升级

    文章目录 前言 一.卸载低版本docker 1.1 检查docker版本 1.2 删除docker 二.开始安装 2.1 安装所需依赖 2.2 设置docker yum源 2.3 查看所有可用版本 2 ...

  7. [转帖]gdb进阶调试技巧

    https://www.jianshu.com/p/9bdaa0644dba 整理一下在linux下C/C++用gdb工具debug一些提高效率的操作.基本的gdb操作就不在这里赘述了. 打印各种变量 ...

  8. 【转】Java类加载器:类加载原理解析

    [转]Java类加载器:类加载原理解析 https://www.jianshu.com/p/1f704ad4196e 摘要: 每个开发人员对java.lang.ClassNotFoundExcetpi ...

  9. 手写模拟Spring底层原理-Bean的创建与获取

    作者:京东物流 张鼎元 1 引言 大家好,相信大家对Spring的底层原理都有一定的了解,这里我们会针对Spring底层原理,在海量的Spring源代码中进行抽丝剥茧手动实现一个Spring简易版本, ...

  10. Spring Boot日志框架Slf4j+logback

    一.简介 Slf4j Java的简单日志记录外观(Simple Logging Facade for Java )可作为各种日志记录框架(例如java.util.logging,logback,log ...