Showing posts with label i. Show all posts
Showing posts with label i. Show all posts

Wednesday, November 16, 2016

I Know What You Did on the Web

This graphic from Baynote Shows a summary of what common online companies like Facebook and Google are doing with your data. This would make a great discussion board topic relating to Big Data for CS Principles.

Read More..

Saturday, September 10, 2016

Review all keys learned home row H E learn I and R

Today we are going to review all of the keys weve learned so far.  Well do that by working in Word and typing from page 5 in the book.

After spending some time reviewing we will add two more keys to our "repertoire" - the I (R2) and the R (L1).

Generally speaking, if you miss a day when we learn new keys the next day we will spend some time reviewing the new keys we learned.  So for those who are gone you can use the following day, during what would be a review time for everyone else, to learn the new keys. This should be beneficial in that if you miss a day you wont need to come in before school to make up what you missed - you can just use the "review time" to make up learning the new keys.
Read More..

Wednesday, July 6, 2016

I Have a Dream bookstore edition

It is sad that in the local book store with the best selection of these:

There is not a single computer science book in these:


My goal? To have enough local high schools offering computer science that is is financially viable for them to carry computer science review books too.
Read More..

Tuesday, May 17, 2016

Its the end of the year as we know it and I feel fine

Fourteen days left...not that anyone here is counting.
The end of the year is always bittersweet. Summer - positive. Goodbyes - negative.
I teach many of my computer science kids for all four years they are in high school. They are going on to great things, but I still miss them.


So this isnt exactly computer science, but it is definitely teaching. And I could use a dose of inspirational.
In the past month I have tried to explain the whole Dave - Eggers/education thing to at least five people. Heres a summary:
  • Ted Talk - while I am not a writing teacher, per se, this is exactly what I am trying to create in the lab. I watch this several times a year, always good for inspiration.
  •  Teachers Have It Easy: The Big Sacrifices and Small Salaries of Americas Teachers - I have not (yet) read this. Seriously folks, it is the end of the school year. If I make it to the end of the day without getting caught in a food fight I am doing really good. It is on my summer catch up list, promise.
  • The documentary - Heres an NPR story about the documentary AMERICAN TEACHER. As a computer science teacher one of my grumbles is, well, other teachers grumbles. When they complain about lack of planning time I try to remain calm - most other subjects have age-appropriate books with worksheets and practice problems. Over my 15 years of teaching computer science I have probably written five or six textbooks. Notes, worksheets, projects, the whole thing. These things are in short supply for computer science teachers.

    One of the main points of his work here is the amount of money spent on textbooks, $8 billion. Now I do not mind developing materials for my classes, curriculum work is actually part of what I enjoy most about teaching. It is just sad that out of that huge total the computer science teaching community is so under supplied.
So here it is - a little reminder of why we do what we do. Something to get you over the hump until summer. Just curious, where do you find inspiration?


Read More..

Thursday, April 14, 2016

I SOFT COMPUTER




Read More..

Saturday, April 2, 2016

How Do I Overclock My CPU


Overclocking could be both exciting and dangerous. The exciting thing about overclocking is that you could improve the computer’s performance up to 50%. This includes your processors, graphic cards and RAM. The dangerous part of overclocking is that it might damage your hardware permanently if you are not careful.

To learn how to overclock effectively and safely, I highly recommend you to download Overclock Your CPU.



Overclocking is basically like forcing your computer to work faster. Instead of walking, you are asking them to run. If you are careless in monitoring the heat, you might toast your hardware. Fortunately, there are programs that are able to monitor the heat and alert you if they are overheated. Some programs might automatically shut down your PC.

Personally, I have never done overclocking because I treat them as babies. Before you start, you should make sure you have good cooling hardware and heat monitoring programs for your computer.

So, how do I overclock my cpu?

Most overclocking works are done on BIOS. Before your computer reaches Window, you need to access the BIOS and configure the settings for your CPU, RAM and Graphic Cards.

Here’re 2 important tips while you overclock your CPU:

Don’t increase your performance 50% suddenly. It is dangerous to do so. Increase 10% and slowly move up.

Always search for opinions and reviews from people who had overclock their CPU and hardware on forums or search engines.

Click Here To Learn How To Overclock From The Professional

Read More..

Saturday, July 19, 2014

Java Security Interview Questions and Answers Single Sign On i e SSO with Spring 3 Security



Q. Can you provide a high level overview of the "access control security" in a recent application you had worked?
A. As shown below, SiteMinder is configured to intercept the calls to authenticate the user. Once the user is authenticated, a HTTP header "SM_USER" is added with the authenticated user name. For example "123". The user header is passed to Spring 3 security. The "Security.jar" is a custom component that knows how to retrieve user roles for a given user like 123 from a database or LDAP server. This custom component is responsible for creating a UserDetails Spring object that contains the roles as authorities. Once you have the authorities or roles for a given user, you can restrict your application URLs and functions to provide proper access control.







Q. What is SSO (i.e. Single Sign-ON)?
A. Single sign-on (SSO) is a session/user authentication process that permits a user to enter one name and password in order to access multiple applications. The process authenticates the user for all the applications they have been given rights to and eliminates further prompts when they switch applications during a particular session. For example, SiteMinder, TivoliAccessManager (i.e. TAM), etc provides SSO. As shown in the diagram above SiteMinder authenticates the user and adds the SM_USER HTTP header to the application. It removes all the "SM" headers and add them after authenticating the user. This prevents amy malicious headers being injected via the browser with plugins like "Firefox Modify headers".


Q. How will you go about implementing authentication and authorization in a web application?
A. Use SSO application like SIteminder or Tivoli Access Manager to authenticate users, and Spring security 3 for authorization as described in the following Spring 3 security tutorials. Spring security pre-authentication scenario assumes that a valid authenticated user is available via  either Single Sign On (SSO) applications like Siteminder, Tivoli, etc or a X509 certification based authentication. The Spring security in this scenario will only be used for authorization. The links to the tutorials below demonstrates this with code.


Q. Can you describe your understanding of SSL, key stores, and trust stores?
A.  SSL, key stores and trust stores


Q. What tools do you use to test your application for security holes?
A. These tests are known as PEN (i.e. penetration) testing or security vulnerability testing. There are tools like
  • SkipFish (web application security scanner) from Google.
  • Tamper data from Firefox. 

Q. What is a two factor authentication?
A. Two-factor authentication is a security process in which the user provides two means of identification. This includes
  • something you have and something you know. For example, a bank card is which something you have and a PIN (i.e. Personal Identification Number) is something you know.
  • two forms of identification like password and a biometric data like finger print or voice print. Some security procedures now require three-factor authentication, which involves possession of a physical token and a password, used in conjunction with biometric data. 
Q. What are the different layers of security?
A.

Application-Layer Security: For example, Spring 3 Security, JAAS (Java Authentication and Authorization) that provides a set of APIs to provide authentication and authorization (aka access control), etc. JAAS provides pluggable and extendable  framework for programmatic user authentication and authorization at the JSE level (NOT JEE level). JAAS provides security at the JVM level (e.g. classes, resources). JAAS is the the core underlying technology for JEE Security. Spring security tackles security at the JEE level (e.g. URLs, Controller methods, service methods, etc)

Transport-Layer Security: Java Secure Sockets Extension (JSSE) provides a framework and an implementation for a Java version of the Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocols and includes functionality for data encryption, server authentication, message integrity, and optional client authentication to enable secure Internet communications. (TLS) 1.0 / (SSL) 3.0, is the mechanism to provide private, secured and reliable communication over the internet between the client and the server. It is the most widely used protocol that provides HTTPS for internet communications between the client (web browsers) and web servers.

Message-Layer Security: In message-layer security, security information is contained within the SOAP message and/or SOAP message attachment, which allows security information to travel along with the message or attachment. For example, the credit card number is signed by a sender and encrypted for a particular receiver to decrypt. Java Generic Security Services (Java GSS-API) is a token-based API used to securely exchange messages between communicating applications. The GSS-API offers application programmers uniform access to security services on top of a variety of underlying security mechanisms, including Kerberos. The advantage of this over point to point transport layer security is that the security stays with the message over all hops and after the message arrives at its destination. So, it can be used with intermidiaries over multiple hops and protocols (e.g. HTTP, JMS, etc). The major disadvantage is that it is more complex to implement and requires more processing.

Note: Simple Authentication and Security Layer (SASL) is a framework for authentication and data security in Internet protocols.  SASL is an Application-Layer security that supports TLS to compliment the services offered SASL.

Note: The Java security API is complicated and Spring security as demonstrated via the above tutorials might be a better alternative.

    Read More..