Sage 是一个免费的、开源的数学软件系统。在我们学习密码学或者数论线代等等数学问题的过程中,用来进行一些复杂的数学运算很好用,比如求离散对数等等。下面就来介绍一下如何在你的电脑上使用docker快速部署sagemath,以及如何使用sage。

之所以选择Docker安装,是因为我刚学了docker,是因为docker部署对系统版本啥的统统没有要求,环境啥的都在容器里也不需要你自己配置,只需一行命令就能快速部署,非常方便。缺点就是要先安装docker,不过网安方面你要漏洞复现啥的多少都要用到docker,早晚要装的。Docker的安装过程网上一搜一大把,这里就不多赘述了。下面来看如何部署使用Sage。

部署Sagemath镜像

系统:Linux系统,这里是kali,只要是linux应该没啥区别

软件要求:docker

首先启动docker:

systemctl start docker

然后就直接通过命令把Sega容器镜像从Dockerhub上拉取下来:

docker pull sagemath/sagemath

然后就等待镜像拉取就行了,大概4个多g,耐心等待一会:

拉取完毕后在镜像目录就能看到了:

Sage的启动和简单利用

通过以下命令在命令行中启动sagemath:

docker run -it sagemath/sagemath:latest

效果如下:

或者我们拉取的sage镜像里是内置了jupyter notebook的,我们也可以通过如下命令在网页段打开jupyter来使用,更加直观一点:

docker run -p8888:8888 sagemath/sagemath:latest sage-jupyter

通过它给我们的网址在浏览器中访问就可以了 :

关于Sage的使用,首先Sage是基于python的,python程序在Sage中都能运行。

关于具体使用,这里是官方的教程文档:http://www.sagemath.org/doc/tutorial/index.html

也有国内大佬翻译的版本,比如:欢迎来到Sage教程! [Lainme's Blog]

示例:求离散对数

以notebook的形式为例,new一个Sage的程序:

输入求离散对数所需的三个参数,即h=p的x次mod g当中的h,p,g,然后调用Sega提供的函数discrete_log(h,mod(g,p))即可,非常简单:

不同运算需要的相关函数见教程。

命令行也是一样的,就直接输入命令就行了

以上就是Sage基础的安装使用过程,希望有所帮助。

[密码学]利用docker安装与使用sagemath相关推荐

  1. 本地虚拟机上的docker安装mysql_linux下利用Docker安装mysql的步骤

    作为一个测试人员,在学习的过程中,可能经常需要去在linux下安装一些软件,有的软件通过搜索别人的博客教程进行安装的话,随着一些软件的升级,以及虚拟机/服务器镜像版本不一致等外部因素,都有可能导致安装 ...

  2. Ubuntu下利用docker安装微信

    Ubuntu下利用docker安装微信 一.安装docker 二.允许所有用户访问X11服务 三.拉镜像 四.启动 五.常用命令 六.启动脚本 七.微信图标 八.新建桌面图标 本次安装是基于Ubunt ...

  3. 群晖NAS教程(二十一)、利用Docker安装DDNS动态域名解析,自动更新域名解析到公网IP(支持阿里云、腾讯云dnspod、Cloudflare、华为云)

    群晖NAS教程(二十一).利用Docker安装DDNS动态域名解析,自动更新域名解析到公网IP(支持阿里云.腾讯云dnspod.Cloudflare.华为云) 为了更好的浏览体验,欢迎光顾勤奋的凯尔森 ...

  4. 群晖NAS教程(二十)、利用Docker安装zdir搭建个人云盘

    群晖NAS教程(二十).利用Docker安装zdir搭建个人云盘 为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客http://www.huerpu.cc:7000/ 一.下载与配置zdir容器 ...

  5. 群晖NAS教程(十六)、利用Docker安装GitLab管理代码工具

    为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客 群晖NAS教程(十六).利用Docker安装GitLab管理代码工具 群晖DSM上安装GitLab有两种方式,一种是直接在群晖套件上安装,另一种是 ...

  6. 群晖NAS教程(十七)、利用Docker安装网心云容器魔方

    为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客 群晖NAS教程(十七).利用Docker安装网心云容器魔方 个人博客 一.群晖docker套件中安装onething1/wxedge镜像. 二.w ...

  7. 群晖NAS教程(十)、利用Docker安装蚂蚁笔记(leanote)

    为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客 群晖NAS教程(十).利用Docker安装蚂蚁笔记(leanote) 蚂蚁笔记是一款特别棒的笔记软件,支持Markdown语法,是程序员必备的软件 ...

  8. 群晖NAS教程(八)、利用Docker安装chevereto图床并进行远程访问

    为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客 群晖NAS教程(八).利用Docker安装chevereto图床并进行远程访问 一.下载chevereto镜像 先查看一下chevereto官方镜 ...

  9. 群晖NAS教程(十九)、利用Docker安装青龙面板(京东薅羊毛)

    为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客 群晖NAS教程(十九).利用Docker安装青龙面板(京东薅羊毛) 一.安装qinglong容器 在群晖docker套件中,搜索qinglong, ...

  10. 铁威马NAS中如何利用Docker安装人人影视教程

    Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...

最新文章

  1. springboot(十六):使用Jenkins部署Spring Boot
  2. wpf学习笔记---初识xaml标签语言
  3. [转载]2000/XP下删除隐藏旧网卡方法
  4. IdeaVim插件使用技巧
  5. Redis整合Spring结合使用缓存实例
  6. 深入理解kestrel的应用
  7. linux complete函数,Linux驱动中completion接口浅析(wait_for_complete例子,很好)
  8. RDIFramework.NET(.NET快速开发框架) 答客户问(2014-02-23)
  9. 高性能MySQL(2)——Schema与数据类型的优化
  10. 灵活、轻便,阿里开源简化GNN应用框架Graph-Learn
  11. MPLS/×××江湖恩仇录笔记
  12. 风电功率预测_人工智能在预测单机风电功率上的应用进展
  13. java php quercus,php中Quercus框架的安装
  14. 我喜欢用计算机400字,我喜欢电脑画画作文400字
  15. css宋体代码_CSS字体代码
  16. Spring源码深度解析百度网盘下载
  17. 按条件爬取百度百科词条及其相关词条的ID
  18. 偷用计算机作文,【实用】《偷着》作文500字4篇
  19. ARP实现简单断网攻击
  20. Imagination利用精简操作集计算(ROSC)技术实现灵活、高性能的神经网络推理

热门文章

  1. 浏览器是如何渲染网页的
  2. 手把手教你 | 识别色环电阻/贴片电阻阻值
  3. SAP《MM学习指南》操作记录----仓库盘点
  4. 论文查重软件哪个好用?
  5. html网页直播实时聊天,一分钟实现网页多人聊天室【Socket.IO】
  6. win7计算机名称格式,win7笔记本电脑如何显示文件扩展名
  7. Java 和python多态区别_python面向对象之多态鸭子类型与Java的比较
  8. 在校大学生关于程序员培训机构的想法
  9. 当下主流的数据库及其特点
  10. [C语言]if语句的常见用法